8086汇编语言dup指令学习

dup是duplicate的缩写,重复的意思;
用来定义重复的字节、字、双字、结构等内存缓冲区;

db x dup(),x是重复的次数,()里是要重复的数,逗号分隔;

    db 重复的次数 dup (重复的字节性数据)
    dw 重复的次数 dup (重复的字型数据)
    dd 重复的次数 dup (重复的双字性数据)


例子:

db 3 dup (0)
定义了3个字节,它们都是0,相当于 db 0,0,0

db 3 dup (0,1,2)
定义了9个字节,它们是0、1、2、0、1、2、0、1、2
相当于 db 0,1,2,0,1,2,0,1,2

db 3 dup('abc','ABC')
定义了18个字符,它们是 ‘abcABCabcABCabcABC’
相当于 db ‘abcABCabcABCabcABC’

例子,

data segment
    db 100 dup(0)
    db 100 dup('12')
    dw 100 dup('1')
    db 256 dup(0)
data ends

括号中,数字直接写,字符用单引号;如果要重复的是数字或字符序列,用逗号隔开;

emu8086看一下;

    对9和字符B的重复如下图,重复5次,

对 7,11 的重复,

 对 'cd','CD' 的重复;十进制99和100是字符c和d的ascii码;十进制67、68是字符C和D的ascii码;绿色这列是十六进制;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值