王爽汇编--实验九

assume cs:code,ds:data
 
data segment
    db 'welcome to masm!'    ;要显示的字符串
    db 02H,24H,71H           ;三种属性的属性字节
data ends
 
code segment 
    start:
    mov ax,0B800H            ;设置es段地址,指向要显示缓冲区
    mov es,ax
    mov ax,data              ;设置ds段地址,指向data段
    mov ds,ax
 
    mov bx,0000H             ;data段中数据的偏移地址,指向当前要显示的那个字符
    mov si,07C0H             ;es段中的数据的偏移地址,指向当前要在缓冲区哪个地址显示出字符
    mov di,10H               ;data段中数据的偏移地址,指向当前使用的属性字节
    mov cx,16                ;每次从data段中复制数据到缓冲区,要复制16个字符,因此循环16次
 
    s:
    mov al,ds:[bx]           ;将字符字节复制到缓冲区
    mov es:[si],al           
    inc si                   ;指向缓冲区下一个字节
    mov al,ds:[di]           ;将属性字节复制到缓冲区
    mov es:[si],al
    inc bx                   ;指向data段与缓冲区的下一个字节
    inc si
    loop s
 
    mov ax,4c00H             ;程序返回
    int 21H
code ends
end start
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值