《汇编语言》实验十答案

实验10.1
assume cs:code
data segment
db 'Welcome to masm!',0
data ends
code segment
start:
mov dh,8
mov dl,3
mov cl,2
mov ax,data
mov ds,ax
sub si,si
call show_str
mov ax,4c00h
int 21h
show_str:
mov ax,0b800h
mov es,ax
mov ax,160
mul dh
sub dh,dh
add dl,dl
add ax,dx
mov di,ax
change:
push cx
mov cl,[si]
jcxz ok
pop cx
mov al,[si]
mov ah,cl
mov es:[di],ax
add di,2
inc si
jmp short change
ok:
pop cx
ret
code ends
end start

实验10.2

assume cs:code
code segment
start:
mov ax,4240h
mov dx,0fh
mov cx,0ah
call divdw
mov ax,4c00h
int 21h
divdw:
push ax   ;被除数低位入栈
mov ax,dx
sub dx,dx
div cx    ;此时ax=(H/N)的商,dx=(H/N)的余数
mov bx,ax
pop ax
div cx
mov dx,bx
ret
code ends
end start

实验10.3

assume cs:code
data segment
db 16 dup (0)
data ends
code segment
start:
mov ax,12666
mov bx,data
mov ds,bx
sub si,si
call dtoc
mov ax,4c00h
int 21h
dtoc:
mov bx,10
sub di,di  ;di为计数器
change:
sub dx,dx
div bx    ;ax=商,dx=余数
mov cx,ax     
add dx,30h
push dx
inc di
jcxz ok
jmp short change
ok:
mov cx,di
s:
pop [si]
inc si
loop s
ret
code ends
end start




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值