8086汇编-做1到100的加法并显示结果

本文详细介绍了使用NASM汇编语言在VirtualBox虚拟机环境中创建一个简单的计数器程序,通过减法和除法操作演示了十进制数值的处理,并展示了如何将结果转换为ASCII字符并显示在指定内存地址。着重讲解了条件转移和循环结构的应用。

环境:nasm,virtualbox

代码如下:

start_:
xor ax,ax
mov cx,100
@f:
add ax,cx
loop @f

mov bx,0xb800
mov ds,bx
mov di,2000

cmp ax,0 ;cmp看作减法指令
jz s0

mov bx,10
s: ;ax不为零,则执行此处的代码
mov dx,0 ;dx存被除数高位,ax存被除数低位
div bx ;ax保存商,dx保存余数
mov cx,ax ;商非零,则循环进行

add dl,48 ;dl的ASCII码
mov dh,2 ;dl字符的属性
mov [di],dx
dec di
dec di
inc cx
loop s
jmp end_

s0: ;ax为0,则执行此处的代码
mov dl,48 ;dl的ASCII码
mov dh,1 ;dl字符的属性
mov [di],dx
inc di
inc di

end_:
db 510-(end_-start_) dup(0) ;或者times number db 0
db 0x55,0xAA

结果如下:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值