程序在数据段中定义的数组如下:
NAMESDB“YOM”
DB20
DB“ROSE”
DB30
DB“KATE”
DB25
请分析下列指令是否正确?为什么?(OFFSET为取偏移地址运算符)
(1)MOVAX,NAMES
(2)MOVAX,WORDPrRNAME+1
(3)MOVBX,6*2
MOVSI,5
MOVAX,OFFSETNAMES[BX][SI]
INC[AX]
OFFSET

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

程序在数据段中定义的数组如下:
NAMESDB“YOM”
DB20
DB“ROSE”
DB30
DB“KATE”
DB25
请分析下列指令是否正确?为什么?(OFFSET为取偏移地址运算符)
(1)MOVAX,NAMES
(2)MOVAX,WORDPrRNAME+1
(3)MOVBX,6*2
MOVSI,5
MOVAX,OFFSETNAMES[BX][SI]
INC[AX]
OFFSET
(4)MOVBX,6
MOVSI,5
LEADI,NAMES[BX][SI]
MOVAL,[DI]

(1)该指令不正确,因为NAMES的属性为字节,而目的寄存器是AX,所以类型不匹配。 (2)该指令为合法指令,指令中已将定义的字节变量用伪指令PIR改变为字类型,所以避免了类型不匹配的错误。 (3)前两条指令是正确的,后两条指令是错误的,OFFSET操作将得到变量的编移地址,但对相对基址变址寻址方式形成的地址在汇编指令时还是未知的,最后一条指令中,AX不能作为基址寄存器。 (4)全为合法指令,第三条指令中的DI取得一个字节的值,然后再按DI中的偏移地址在数据段中将一字节内容传送到AL寄存器。

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top