汇编语言——将AX寄存器中的16位数分成4组,每组4位,然后把这四组数分别放在AL、BL、CL和DL中

在这里插入图片描述

在这里插入图片描述

;将AX寄存器中的16位数分成4组,每组4位
;然后把这四组数分别放在AL、BL、CL 和DL中
data segment
data ends
stack segment stack
	dw 100 dup (?)
	top label word
stack ends
code segment
	assume cs:code,ds:data,ss:stack
main proc far
	mov ax,data
	mov ds,ax
	mov ax,stack
	mov ss,ax
	lea sp,top
	
	mov ax,45633			;1011 0010 0100 0100
							;al=1011=0bh,bl=0010=02h
							;cl=0100=04h,dl=0100=01h
	
	mov dl,al				;al移到dl
	and dx,0fh				;屏蔽高12位
	
	mov bl,ah				;ah移到dl
	and bx,0fh				;屏蔽高12位
	
	mov cl,4
	rol ax,cl				;ax循环左移4位,把ax最高4位移到最低4位
	
	mov cl,ah				;ah移到cl
	and cx,0fh				;屏蔽高12位
	
	and ax,0fh				;屏蔽ax高12位
	
	mov ah,4ch
	int 21h
main endp
code ends
	end main
  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值