汇编中关于有符号和无符号问题
发布网友
发布时间:2022-04-22 06:43
我来回答
共2个回答
热心网友
时间:2022-06-16 17:55
问题一:sf标志位判断符号是针对第七位吗?
是。
如:0~7FH的话,sf 就是0。
80~FF的话,都是1。
------------------
问题二:mov al,0fch
add al,05h
无论这些数,是有符号、还是无符号,
CPU 的计算方法都是一样的,结果,当然也是相同的。
结果和标志位如下:
AL = 01H
CF = 1
SF = 0
OF = 0
热心网友
时间:2022-06-16 17:56
-128=1111 1111
127=0111 1111
超过127 127+2=1000 0001=-1
其实汇编和你1.中说的一样。。小于-128的数字不能拿2字节的寄存器存放了。
他就相当于 这个2字节的寄存器。能存放-128~255的数据。
你当他是有符号数时就是-128~127.无符号0~255
超过这个界限,就会溢出、
还有补码的问题。计算机如果要存放一个负数。那么会存放他的补码、
所以你遇到一个二进制的数字,没有上下文联系,是没有办法判断是否为有符号数和无符号数、。
如果还有不懂可以追问,在线等回复。、
希望对你能有所帮助。