主题:NEG指令的问题
zqg1177
[专家分:180] 发布于 2007-07-03 11:41:00
(AL)=-15,要使(AL)=15应执行NEG AL
它的具体过程我不太明白。
我的过程是:NEG即然是求补,那么(AL)=-15=1111 0101 求补的话符号位不变,取反加1,那么就是1110 1011<>15。
请大家开导下
回复列表 (共6个回复)
沙发
宿命的裸奔 [专家分:150] 发布于 2007-07-03 20:59:00
-15=11110101?
应该等于11110001吧?
变反加1
15=00001111
板凳
def [专家分:3380] 发布于 2007-07-03 21:04:00
对于总是查不出错的人。。。
3 楼
zqg1177 [专家分:180] 发布于 2007-07-06 15:57:00
请问宿命的裸奔-15转成16进制不是FF吗?请说明一下,谢谢。
def:我只是有段时间没有看汇编了,很多东西都忘记了,当时也学的不太好,问的问题也比较低级,你没有必要表你这种态度吧,你看不起可以不回贴。做人不光要有学问,更要有品德!
4 楼
do_loop [专家分:560] 发布于 2007-07-07 13:08:00
如果是一字节那么-1转换成16进制是FF
5 楼
宿命的裸奔 [专家分:150] 发布于 2007-07-07 17:02:00
看来不用我回答了,有人已经答了。
告诉你个简便的方法来判断负数
-1=0-1
那么0000 0000 减了1会是多少呢?
答是 1111 1111
那么-15 是多少呢?又不是11111111,按照趋势,是11110001
至于真正的边界-256,那是规定的10000000。
或者0=-15+15
怎样才能让00001111变成00000000而且是用加法,自己试试吧
6 楼
zqg1177 [专家分:180] 发布于 2007-07-09 16:16:00
明白了,谢谢!
我来回复