为之疯狂 发表于 2014-4-24 22:19:28

【作业题】每天一交

当完成下列8位二进制数的运算后,标志寄存器中OF,ZF,SF,CF的值各是多少?

OF是否溢出(有符号数据)
ZF结果是否为零
SF是否有符号
CF是否借位 (无符号)

OF标志位是反应带符号数的溢出情况的。
1.当两个符号相同的数相加,结果的符号与之相反,则OF=1,否则OF=0.
2.当两个符号不同的数相减,结果的符号与减数相同,则OF=1,否则OF=0.


1.ABH+55H

转换成二进制
1010 1011+0101 0101 = 1 0000 0000

OF=0负数与正数相加, 绝对不会溢出
ZF=1因为是8位运算,后8位都为0,结果为0
SF=0第7位(从0开始第7位也就是第8位)为零,这里是无符号,也可以这样认为:进行了算术运算后,标识符SF自动的与结果最高位相同。
CF=1上面的结果8位已经存不下,产生借位,所以cf 就是1

2.DAH+EDH

转换成二进制
1101 1010 + 1110 1101 = 0001 1100 0111

OF=0 因为结果与操作数符号相同所以为0
ZF=0 因为结果不为零
SF=1 因为最高位为1
CF=1 因为已经产生借位

3.55H-3EH

转换成二进制
0101 0101 - 0011 1110 = 0001 0111

OF=0因为同号相减,不会产生溢出
ZF=0因为结果不为零
SF=0因为最高位为0
CF=0因为没有产生借位

4.B3H-62H

转换成二进制
1011 0011 - 0110 0010 = 0101 0001

OF=1因为两个不同符号数相减,结果符号与减数符号一样
ZF=0因为结果不为零
SF=0因为最高位为0
CF=0因为没有产生借位


内存中某单元的物理地址是19318H,若段基地址为1916H,则段内偏移地址为多少



1B8H

若段内偏移地址为2228H,则段基地址为多少?
170FH

物理地址为26114H段内偏移地址为0714H,求段基地址?
25A0H


如果CS=1986H,IP=0714H,求程序执行下一条指令的物理地址?
19F74

如果将10000H~1FFFFH这段空间当作栈段,初始状态是空的,此时SS=1000H,SP=?
sp = 0






志华 发表于 2014-4-24 23:24:50

好习惯。。

www5956 发表于 2014-4-27 12:07:46

厉害呀!:loveliness:
页: [1]
查看完整版本: 【作业题】每天一交