作业帮 > 综合 > 作业

汇编语言JA JG 指令不都是大于意思JA(CF=0且 ZF=0) JG(SF=0F且 ZF=0)也就是K1的指令不会执

来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/09/25 00:35:41
汇编语言JA JG 指令不都是大于意思JA(CF=0且 ZF=0) JG(SF=0F且 ZF=0)也就是K1的指令不会执行的到.

图片中的33题 K1指令会执行吗?能回答的越详细越好,
汇编语言JA JG 指令不都是大于意思JA(CF=0且 ZF=0) JG(SF=0F且 ZF=0)也就是K1的指令不会执
MOV AL,NUM ;AL=19H
CMP AL,NUM + 1 ;19H-98H:ZF=0,CF=1,OF=1; SF=1
JA ...-----CF=0 且 ZF=0,不满足条件,不转移
JG ...-----SF=OF且 ZF=0,满足条件,转移
JA ...-----大于转移,是针对无符号数的
JG ...-----大于转移,是针对有符号数的
如果是无符号数,19H 就小于 89H.
如果是有符号数,19H 就大于 89H.因为 89H 是负数.
再问: JA不转移,那结果怎么会变成98h,应该98h传不到val吧;JG转移了所以K1的指令执行了,val=19h。
再答: 不转移,就接着往下执行:

MOV AL, NIM + 1 --AL = 89H

K1: MOV VAL, AL ---VAL = 89H
----------------------

转移,就直接跳到 K1 去执行:
(MOV AL, NIM + 1 --跳过此行)

K1: MOV VAL, AL ---VAL = 19H
再问: 好的明白了,谢谢这位的耐心的讲解。非常感谢
再答: 题目问的是:JA JG 不都是...,也就是K1的指令不会执行的到。

----

无论转移不转移,K1的指令,都是必定要执行的。
有可能不会执行的,是下面这一句:

MOV AL, NIM + 1 --AL = 89H