将22H存放在内存(30H)单元中 ,该数最高位为D7,最低位为D0,判断D2位是0还是1,通过程序判断并进行跳转,如果为1则将内存31H写入立即数0AFH。如果为0则将内存31H写入立即数0A0H
时间: 2024-05-28 22:08:34 浏览: 11
MOV AL, 22H ;将22H存入AL寄存器
MOV [30H], AL ;将AL寄存器中的值存入内存30H单元中
AND AL, 04H ;将AL寄存器的值与00000100进行按位与运算,结果存入AL中
CMP AL, 00H ;比较AL寄存器的值与0是否相等
JE write_0A0H ;如果相等则跳转到write_0A0H标签处
MOV [31H], 0AFH ;将立即数0AFH存入内存31H单元中
JMP end_prog ;跳转到end_prog标签处
write_0A0H:
MOV [31H], 0A0H ;将立即数0A0H存入内存31H单元中
end_prog:
;程序结束
相关问题
用uvision4编写代码数字22H存放在内存(30H)单元中 ,该数最高位为D7,最低位为D0,判断D2位是0还是1,通过程序判断并进行跳转,如果为1则将内存31H写入立即数0AFH。如果为0则将内存31H写入立即数0A0H
下面是使用汇编语言在uVision4中编写的程序:
ORG 0H ; 程序从地址0H开始
MOV A, #22H ; 将数字22H存放到累加器A中
MOV R0, #30H ; 将内存单元30H的地址存放到寄存器R0中
MOV @R0, A ; 将累加器A中的值存放到内存单元30H中
MOV A, @R0 ; 将内存单元30H中的值读取到累加器A中
ANL A, #4H ; 判断D2位是否为0,如果为0则A的值为0,否则为4H
JZ ZERO ; 如果D2位为0则跳转到ZERO标签
MOV A, #0AFH ; 将立即数0AFH存放到累加器A中
MOV R0, #31H ; 将内存单元31H的地址存放到寄存器R0中
MOV @R0, A ; 将累加器A中的值存放到内存单元31H中
SJMP END ; 跳转到程序结束
ZERO:
MOV A, #0A0H ; 将立即数0A0H存放到累加器A中
MOV R0, #31H ; 将内存单元31H的地址存放到寄存器R0中
MOV @R0, A ; 将累加器A中的值存放到内存单元31H中
END:
NOP ; 空操作,程序结束
在这个程序中,首先将数字22H存放到内存单元30H中,然后读取该内存单元中的值,并使用AND逻辑运算符和掩码4H(二进制值为0100)来判断D2位是否为1。如果为1,则将立即数0AFH存放到内存单元31H中,否则将立即数0A0H存放到内存单元31H中。最后程序结束。
用keil uvision4写22H存放在内存(30H)单元中 ,该数最高位为D7,最低位为D0,判断D2位是0还是1,通过程序判断并进行跳转,如果为1则将内存31H写入立即数0AFH。如果为0则将内存31H写入立即数0A0H
以下是用汇编语言编写的程序:
ORG 0
MOV A, 30H ; 将22H读入累加器A
ANL A, #04H ; 判断D2位是0还是1
JZ ZERO ; 如果为0则跳转到ZERO标签
MOV 31H, #0AFH ; 如果为1则将0AFH写入31H
SJMP END ; 跳转到END标签
ZERO:
MOV 31H, #0A0H ; 将0A0H写入31H
END:
RET ; 程序结束
解释一下程序的思路:
首先将存放在30H单元中的数读入累加器A,然后使用位与运算(ANL)操作,将累加器A与掩码04H进行位与运算,只有D2位为1时,运算结果才为非零值。如果运算结果为零,说明D2位为0,程序跳转到ZERO标签处,将0A0H写入31H单元;如果运算结果为非零值,说明D2位为1,程序继续执行,将0AFH写入31H单元。最后,程序返回(RET)结束。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)