博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LEA指令
阅读量:6713 次
发布时间:2019-06-25

本文共 783 字,大约阅读时间需要 2 分钟。

LEA是8086/8088系列的一条指令,取自英语Load effect address——取,也就是取。在8086/8088中有20位,由16基址向左偏移4位再与之和得到。地址传送指令之一。

取偏移地址指令

指令格式如下:

LEA reg16,mem

LEA指令将mem的4位16进制送到指定的。这里,源必须是,目标操作数必须是16位。因该常用来作为地址指针,故在此最好选用四个间址寄存器BX,BP,SI,DI之一。

LEA 取指令 (Load Effective Address )

指令格式:LEA 目的,源

指令功能:取源操作数地址的,并把它传送到目的操作数所在的单元。如:

LEA BX ,BUFFER

LEA AX,[BX][DI](j基址加变址寻址)

LEA DX,DATA [BX][SI](相对基址加变址寻址)[1] 

LEA 指令要求源操作数必须是,而且目的操作数必须是一个除段寄存器之外的16位或32位寄存器。当目的是16位时,那么只装入的低16位。使用时要注意它与MOV指令的区别,MOV指令传送的一般是源中的内容而不是地址。

例1 假设:SI=1000H , DS=5000H, (51000H)=1234H

执行指令 LEA BX , [SI]后,BX=1000H

执行指令 MOV BX , [SI]后,BX=1234H

有时,LEA指令也可用取的MOV指令替代。

例2 下面两条指令就是等价的,他们都取TABLE的偏移地址,然后送到BX中,即

LEA BX,TABLE

MOV BX,OFFSET TABLE

但有些时候,必须使用LEA指令来完成某些功能,不能用MOV指令来实现,必须使用下面指令:

LEA BX, 6[DI]

解释:某含20个元素,每个元素占一个字节,序号为0~19。设DI指向开头处,如果把序号为6的元素的送到BX中

转载地址:http://xthlo.baihongyu.com/

你可能感兴趣的文章
Supervisor安装
查看>>
自建框架知识点一命名空间和自动加载
查看>>
21_css布局2_浮动布局.html
查看>>
DateUtils 单元下的公用函数目录
查看>>
构建高效安全的Nginx Web服务器
查看>>
jQuery 练习[二]: 获取对象(1) - 基本选择与层级
查看>>
GNS3桥接真机网卡
查看>>
Web服务之LNMMP架构及动静分离实现
查看>>
centos6.4搭建zabbix
查看>>
Nginx+Keepalived实现
查看>>
安装python的easy_install和pip
查看>>
android SQLite
查看>>
Sublime Text 2 快捷键用法大全
查看>>
放弃redis使用mongodb做任务队列支持增删改管理
查看>>
G口与S口的区别
查看>>
甲骨文拒绝SAP 2.72亿美元赔偿要求重审
查看>>
我的友情链接
查看>>
linux非交互式生成秘钥
查看>>
SQL Server数据库镜像搭建(无见证无域控)
查看>>
C练习小代码-20151108
查看>>