111111
精灵王
精灵王
  • 注册日期2010-12-08
  • 发帖数640
  • QQ
  • 火币1103枚
  • 粉丝120
  • 关注75
  • 社区明星
阅读:2980回复:0

经典汇编语言教程:9.4 重复汇编伪指令

楼主#
更多 发布于:2013-01-27 14:11

伪指令IRP的作用是用每个参数创建一组语句,其重复次数由伪指令后面参数表中参数的个数来确定。其一般使用格式如下:
IRP形式参数, <实参1, 实参2, ……, 实参n>
重复的语句组
ENDM

例9.11 把16位通用寄存器之值相加,并把结果存入寄存器AX。
解:由于16位通用寄存器名是一些不同的符号,不能用计数的方法来依次访问它们,所以,我们需要用伪指令IRP来实现。
IRPREG, <BX, CX, DX, SP, BP, SI, DI>
ADD  AX, REG
ENDM


9.4.3 伪指令IRPC


伪指令IRPC的作用与IRP相似,其实参表是一个字符串,并对字符串中的每个字符创建一组语句,所以,其重复次数是由该字符串中的字符数来确定。其一般使用格式如下:
IRPC形式参数, 字符串
重复的语句组
ENDM

例9.12 定义10个字节存储单元,保存数字0~9的平方数。
解:
IRPCX, 0123456789
DB  X*X
ENDM

例9.13 把16位数据寄存器之值相加,并把结果存入寄存器DI。
解:由于16位数据寄存器是AX、BX、CX和DX,它们的名称中只有第一个字符不同,所以,可以用伪指令IRPC来实现。
XORDI, DI
IRPCREG, ABCD
ADD  DI, REG;X            ;符号;是连接运算符
ENDM

喜欢0 评分0
游客

返回顶部