试题详情
简答题语句MOV BX,M和LEA BX,M有何区别?LEA BX,ARRAY[BX+SI]是否可以用MOV BX,OFFSET ARRAY[BX+SI]来代替?为什么?
  • MOV BX,M语句的功能是将变量M字内容传送至BX中,即【M】→BX,而LEA BX,M是将变量M的偏移地址传送至BX中,即EA→BX.LEA BX,ARRAY【BX+SI】是不可以用MOV BX,OFFSET ARRAY[BX+SI]来代替的,因为取偏移地址算符OFFSET的优先级比加号(+)高。
    LEA语句执行后,BX+SI+ARRAY的EA→BX.由此可见。这两条语句所指源操作数偏移地址均相同,只是LEA语句执行后是将该源操作数所在的存储单元的偏移地址送人BX,而后面的MOV语句的MOV语句执行后是将该偏移地址中内容即源操作数本身送人BX,故不能代替。
  • 关注下方微信公众号,在线模考后查看

热门试题