高手请进。帮忙解一下汇编题目。我有些疑问。请回答我的疑问。

来源:百度知道 编辑:UC知道 时间:2024/05/22 10:39:43
1.检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是()
A.JNC LOP1 B.JA LOP1
C.JC LOP1 D.JGE LOP1
答案是C但我搞不懂为什么,感觉题目有问题,大家帮忙看一下谢谢了
2.在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是___STOS__或____CMP_才有实际意义(为什么那movsb呢???)
3.为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序列是(C )。
A、INC CX JZ MINUS
B、SUB CX,OFFFFH JZ MINUS
C、AND CX,OFFFFH JZ MINUS
D、XOR CX,OFFFFH JZ MINUS
感觉答案有问题。大家怎么看?A怎么不对啊、感觉c肯定不适合、大家说呢、
4.AL和VAR字节单元中分别存放一个带符号数,执行CMP AL,VAR时,如AL》VAR,那么溢出位和符号位的关系是(A )。
A、OF=SF
B、OF!=SF
C、OF=SF=1
D、OF=SF=0
那D不对吗?
大家请详细解答我的疑问处,谢谢了,谢谢了!!!

1.检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是()
A.JNC LOP1 B.JA LOP1
C.JC LOP1 D.JGE LOP1
答案是C但我搞不懂为什么,感觉题目有问题,大家帮忙看一下谢谢了

解答:如果前面的比较指令是"CMP BL,AL",则选C是对的;但如果前面的比较指令是"CMP AL,BL",则应该是A正确。
===========================

2.在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是___STOS__或____CMP_才有实际意义(为什么那movsb呢???)

解答:REPZ或REPNZ的具有串比较功能的,它根据标志位的变化来决定是否继续循环。如果配合使用MOVSB那是没有意义的,实际上配合使用STOS也没有意义。因为MOVSB和STOS是传输指令,它们不会引起标志位的变化。
==============================================

3.为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序列是(C )。
A、INC CX JZ MINUS
B、SUB CX,OFFFFH JZ MINUS
C、AND CX,OFFFFH JZ MINUS
D、XOR CX,OFFFFH JZ MINUS
感觉答案有问题。大家怎么看?A怎么不对啊、感觉c肯定不适合、大家说呢、

解答:CX=-1与CX=0FFFFH是一样的。所以上述A、B、D都是对的,但XOR的运算时间最快,所以D是最佳答案。
====================================

4.AL和VAR字节单元中分别存放一个带符号数,执行CMP AL,VAR时,如AL》VAR,那么溢出位和符号位的关系是(A )。
A、OF=SF
B、OF!=SF
C、OF=SF=1