【汇编程序】将寄存器内容依次取反
程序员文章站
2022-03-10 09:47:25
...
这里写自定义目录标题
【汇编程序】将寄存器内容依次取反
需求:将AX寄存器中的内容以相反的顺序传送到DX寄存器中,并要求AX中的内容不被破坏,然后统计DX寄存器中‘1’的个数并存入BL中。
实现思路:先定义一个数据段,存放题目中的内容如1234H,然后定义个BL统计‘1’出现的次数、定义DX来接受AX的值 ,总体思路是先将AX入栈保护AX,然后将AX的值按位左移,移入CF 然后用循环右移RCR将CF的值推入DX中,如果是1则INC BL。
CODE SEGMENT
ASSUME CS:CODE
START: MOV AX,1234H
PUSH AX
MOV DX,0
MOV CX,16
NEXT:SHL AX,1
JNC L1;如果结果为CF=0则跳转L1
INC BL
L1:RCR DX,1
LOOP NEXT
STOP:POP AX
CODE ENDS
END START
【个人学习,仅供参考】
上一篇: Docker镜像压缩与优化操作