鱼C论坛

 找回密码
 立即注册
查看: 11900|回复: 10

请教补码10000000的原码是多少啊,它表示多大呢?怎么算的

[复制链接]
发表于 2011-8-18 21:16:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
初学小甲鱼的汇编语言课程,讲的通俗易懂,太好了,对于补码这快我还是不太理解,想问一下:
补码10000000的原码是多少啊,还是10000000吗,补码10000000的大小表示多少啊,是-128吗,
最高位不是符号位吗?怎么能参与计算呢,我搞糊涂了,求教,不知道甲鱼老师能指点一下不

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-18 22:41:20 | 显示全部楼层
好啊 谢谢了  呵呵
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-18 22:42:24 | 显示全部楼层

好啊 谢谢了  呵呵
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-18 22:58:04 | 显示全部楼层
补码有一个比较容易理解的算法:

任意一个负数我们对其求反,即0变为1,1变为0
然后两个数相加肯定=11111111
1100+0011=1111   1011+0100=1111
而11111111再加1=00000000,最高位舍去变成0
所以得出一个结论:
负数+ 取反 +1=0

  
(1)将一个负数求其补码:
如-104,变成 -104+103+1=0
103的二进制用除2取余法为01100111
也就是说 -104的补码跟 01100111相反,所以-104=10011000
(2)已知补码形式,求其表示的值
同样的道理
10011000  取反 01100111=103
所以 ?+103+1=0  ?=-104
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-18 23:43:09 | 显示全部楼层
;P           
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-19 08:16:40 | 显示全部楼层
顺便学习下,谢了。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-19 11:34:12 | 显示全部楼层
其补码定义为-128
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-19 11:42:21 | 显示全部楼层
[-128]补=2的八次方-128=128,也就是10000000B,这个数比较特殊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-8-19 22:27:40 | 显示全部楼层

这位大侠你真是太牛了,这么好的方法我还从来没听过,我们老师怎么不教呢,哎!

还想问你下,你这种方法是另辟蹊径,请问能不能说说如果我就按照定义去求10000000的原码该怎么求?比如先减去1得11111111(最高位的1我当是符号位没有参加运算,没有动),再取反又得10000000,为什么又回来了啊,虽然2^7=128好像对了,但是符号位的1怎么又能参与运算呢,求教
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-8-19 22:30:48 | 显示全部楼层
已经一天没有坚持看汇编了,:Q,阿门!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-8-20 20:45:09 | 显示全部楼层
本帖最后由 javanetwork 于 2011-8-20 20:55 编辑
xznwood 发表于 2011-8-19 22:27
这位大侠你真是太牛了,这么好的方法我还从来没听过,我们老师怎么不教呢,哎!

还想问你下,你这种方 ...

取反再加1,添个负号
其实跟我说的是同一个理,只不过比较容易接受
符号位当然也参与运算了,符不符号是我们说了算,
计算机就一SB,哪懂得正负
10000000 取反变成01111111
两者相加,=11111111=-1
所以10000000=-1-01111111=-1-127=-128


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 22:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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