. : : Assembly Language : : .
|
首页
|
我提出的问题
|
我参与的问题
|
我的收藏
|
消息中心
|
游客 登录
|
提问
|
未解决
|
已解决
|
精华区
|
搜索
|
《汇编语言》论坛
->
标志寄存器
主题 : :
求检测点11.2答案
[待解决]
回复[
14
次 ] 点击[
971
次 ]
yc2010
[帖 主]
[ 发表时间:2010-06-01 16:13 ]
荣誉值:2
信誉值:0
注册日期:2010-03-03 23:27
CF 0F SF ZF PF
sub al,al 1 0
mov al,10H 1 10000
add al,90H 1 1010 0000
mov al,80H 0 1000 000
add al,80H 0 1 0000 0000
mov al,0FCH 1 1111 1100
add al,05H 1 1 0000 0001
mov al,7DH 1 111 1101
add al,0bH 1 1000 1000
340500171
[第
14
楼]
[ 回复时间:2010-12-28 14:09 ]
荣誉值:0
信誉值:0
注册日期:2010-11-20 02:27
这个里面的问题1中80H为负数-128,执行add al,80H,就是-128 (-128)=-256,结果是负数,怎么SF是0呢
8位寄存器是装不下256的,add al,80h执行之后,al=00000000,本来是100000000,因为他是9位al装不下,所以变成了0。
还有问题3:7DH=01111101b,有符号数情况下,首位为0,故为正值=125;0BH=00001011,有符号数情况下=5。在有符号数情况下相加,为130,溢出,所以OF=1。不管是有符号数还是无符号数,其结果都是整数,怎么SF=1呢
最后结果是10000010,补码中,最高位是1的皆为负数。
也许,大概就这样把,我不理解的是0BH=00001011,有符号数也应该是11吧?怎么是5呢?
需要登录后才能回帖 -->>
请单击此处登录
Copyright © 2006-2024 ASMEDU.NET All Rights Reserved