易码技术论坛

 找回密码
 加入易码
搜索
查看: 7098|回复: 8

[源码] char型的除法和求模(LavaX)

[复制链接]
发表于 2007-11-28 11:43:05 | 显示全部楼层 |阅读模式
  1. char divchar(char a,char b)
  2. {
  3.         char reste;
  4.         char count;
  5.         char c;

  6.         reste=0;count=8;
  7.         do{
  8.                 c=a&80;
  9.                 a=a<<1;
  10.                 reste=reste<<1;
  11.                 if(c)reste=reste|1;
  12.                 if(reste>=b)
  13.                 {
  14.                         reste=reste-b;
  15.                         a=a|1;
  16.                 }
  17.         }while(--count)
  18.         return(a);
  19. }



  20. char moduchar(char a,char b)
  21. {
  22.         char count;

  23.        
  24.         for(count=0;!(b&0x80);count++)
  25.         {
  26.                 b=b<<1;
  27.                 if(b>a)
  28.                 {
  29.                         b=b>>1;
  30.                         break;
  31.                 }
  32.         }
  33.         do{
  34.                 if(a>=b)a=a-b;
  35.                 b=b>>1;
  36.         }while(count--)
  37.         return(a);
  38. }
复制代码
 楼主| 发表于 2007-11-28 11:47:18 | 显示全部楼层
int型和long型一样,但要注意符号。
发表于 2007-11-28 14:10:15 | 显示全部楼层
为什么还要造轮子?
lavax没有这个功能吗?
 楼主| 发表于 2007-11-30 18:50:21 | 显示全部楼层
权当练练手。
发表于 2007-11-30 19:31:51 | 显示全部楼层

明白了
发表于 2007-12-1 09:50:13 | 显示全部楼层
话说用这些基本算法可以扩展LavaX的运算能力.
发表于 2007-12-1 13:41:52 | 显示全部楼层
好像没有什么扩展啊
发表于 2007-12-1 14:09:59 | 显示全部楼层
比如用位操作来实现64位甚至更高位数的数值运算.
发表于 2007-12-2 13:01:12 | 显示全部楼层
那好像不是顶楼要做的
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-19 03:50 , Processed in 0.009157 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表