问一道关于汇编的题

2024-11-03 20:51:10
推荐回答(5个)
回答(1):

应当选D
因为你把-68和86转换成二进制(应该回哦)
算出结果后观察,最高位有借位所以CF=1,最高位为1。所以SF=1,OF是否溢出要看次高位向符号位的借位(既CS)和符号位向更高位的借位(CS+1)。当CS=CS+1的时候没有溢出,否则就有溢出。溢出的时候就位1。这题算出来CS不等于CS+1,所以OF=1。ZF是当结果等于0的时候,ZF=1,这题明显结果不等于0,所以结果应当为CF=0

回答(2):

错误的首先是(d) zf=1。
zf=1表达的意义是运算结果为0,而实际上,-68-86,肯定是不为0的。
其它,也有错误。
难道是多项选择题?

回答(3):

debug发现cf=0,sf=0,of=1,zf=0.
把我也搞晕了,想不通cf为什么=0.
同求高手详细的讲解。

回答(4):

每进行一次压栈操作SP的值减2,这里进行了3次压栈操作所以SP的值减6,因为50H

十六进制数
所以减6后值为4AH。即SP=4AH

回答(5):

(1)执行指令push
ax后sp=1ffeh
(2)再执行push
bx及pop
ax后sp=1ffeh,ax=5000h,
bx=5000h