SEG和LEA有什么区别?

作者&投稿:充崔 (若有异议请与网页底部的电邮联系)
~ LEA 和 offset 可以对比, Seg单独一类.
1、LEA是汇编指令,对应一个机器码,OFFSET是伪指令,没有专门的机器码;
2、LEA可以使用各种存储器寻址方式,OFFSET只能回送变量或标号的偏移地址;
3、LEA在运行时才能确定操作数的地址,OFFSET在编译时由汇编程序计算出操作数的地址并作为立即数回送给指令(也就是把立即数放入编译出的机器指令中);
4、LEA(可以并非只能)用来确定局部变量的地址,OFFSET(只能)用来确定全局变量的地址,因为全局变量的地址在汇编时就已经确定,而局部变量地址受运行环境的影响,是不确定的,只能在程序运行时计算得出。
===seg指令=======隔一下========================
seg指令是一个前缀指令,前缀指令就是类似于stosw这样的指令前面可以加rep指令来重复执行stosw操作那样。
把seg指令加到mov指令前,会影响mov指令使用的段寄存器。
比较常见的就是,mov指令操作某内存地址时,默认使用DS段,但是你如果在mov指令前加上seg es,那么下面的这条指令就会使用ES段而不是默认的DS段。
如: seg es
mov dx, di
另外一种用法: mov dx, seg scancode 取scancode的段地址放入dx.
SEG∶ 数值返回运算符。其加在一个变量名或标号前面,返回的数值是该变量名或标号所在的段基址。

一、指代不同1、lea:是微机8086/8088系列的一条指令,取有效地址,也就是银银手取偏移地址。2、offset:变量名或标号,汇编程序将回送变量或标号的偏移地址。二、规则不同1、lea:在微机8086/8088中有20位物理地址,由16位段基址向左偏移4位再与偏移地址之和得到。2、offset:Reference作为偏移量参照系的引用区域。Reference必须为对单元格或相连单元格区域的引用;否则,函数OFFSET返回错误值#VALUE!。三、用法不同1、lea:用于把源操作数的地址偏移量传送目的操作数。源操作数一定要是一个存贮器操作数,而召的操作数可以是任何的16位的通用寄存器,包括指针寄存器/变址寄存器。2、offset:OFFSET(reference,rows,cols,height,width),Cols相对于偏移量参照系的左上角单元格,左(右)偏移的列数。参锋嫌考资料来[tele.uapes.cn/article/048752.html]
[tele.mmrnn.cn/article/186529.html]
[tele.jnjiank.cn/article/527861.html]
[tele.mmrnn.cn/article/197583.html]
[tele.qdu123.top/article/083627.html]
[tele.apzoe.cn/article/513082.html]
[tele.ebiofarm.cn/article/742851.html]
[tele.apzoe.cn/article/743069.html]
[tele.hbjwjnjc.cn/article/647019.html]
[tele.jydhy.cn/article/918534.html]

要说有区别也有offset是伪指令;lea是硬指令;offset在编译阶段得出偏移地址;lea在程序执行的时候才去的偏移地址;液蠢昌从速度上来说,要比闹扒lea来得快!但是,从复杂度和灵活性来说,lea则远远档悄超过offset[tele.aigogo.top/article/093846.html]
[tele.my45du.cn/article/574139.html]
[tele.zcnygs.cn/article/301256.html]
[tele.my45du.cn/article/856293.html]
[tele.xktyz.top/article/781504.html]
[tele.jyjianye.cn/article/370856.html]
[tele.jswybg.cn/article/610548.html]
[tele.jyjianye.cn/article/894206.html]
[tele.syybx.cn/article/803147.html]
[tele.bjjwk.cn/article/860413.html]

1、从intel的指令代码集我们可以看到与段寄存器有乱毁山关的有:MOVmem,segregMOVsegreg,memMOVserreg,reg很显然,不能把立即数赋值给段寄存器。DATASEGMENT作为伪指令,在编译连接过程会被赋一个立即数的值。2、MOVSI,OFFSETSTRMOVAX,[SI+2]这个是没错的。LEASI,STR与MOVSI,OFFSETSTR最大区别在于OFFSETSTR是一条伪指令,与SEGDATA之类相似,它在编译和连接过程被赋给一个值,你可以把它看成一个立即数,LEASI,STR是把STR的内存指针哗中赋给SI,你可以把它看成内存变量。另外余做,MOVSI,OFFSETSTR是一条2字节立即寻址指令,LEASI,STR是一条3字节内存寻址指令,后者虽然有比较灵活的寻址方式,但前者具有更小的容量和更快的执行速度,推荐尽可能使用MOVSI,OFFSETSTR。[tele.tyhhmp.cn/article/625049.html]
[tele.7e9.com.cn/article/490526.html]
[tele.mioke.com.cn/article/268401.html]
[sport.smqcby.cn/article/136529.html]
[tele.aiplace.cn/article/308257.html]
[sport.smqcby.cn/article/136420.html]
[sport.fyxxnet.cn/article/184269.html]
[tele.jcwl2.cn/article/026738.html]
[sport.msbaby.cn/article/807345.html]
[tele.hacnit.cn/article/076243.html]

lea指令好像错了,不能使用立即歼芹帆数首雀作为操作数LEASI,[3000H]MOVSI,[3000H]的区别是第一条lea将地址值3000h送入SI,第二条mov则是把地址3000h中存储的值送氏雹入si[tele.apzoe.cn/article/850176.html]
[tele.hbjwjnjc.cn/article/501687.html]
[tele.apzoe.cn/article/981374.html]
[tele.hbjwjnjc.cn/article/032418.html]
[tele.jydhy.cn/article/129504.html]
[tele.47s47.cn/article/317809.html]
[tele.jydhy.cn/article/260389.html]
[tele.47s47.cn/article/104352.html]
[tele.cdbaite.cn/article/039625.html]
[tele.soufto.cn/article/513207.html]


动词不定式
经常在这种结构中使用的动词有:consider,decide,discover,explain,find out,forget,hear,know,lea rn,observe,understand,wonder等。[编辑本段][动词不定式的语法功能]一、作主语 动词不定式作主语时,句子的谓语动词常用单数,其位置有以下两种:(1)把不定式置于句首。如:To get there by bike will ...

汇编语言 emu8086
err and al,0Fh ;ascii -> real value mov ah,0 ;eg: 字符5的ASCII值是35H,and 0fh之后,变成5,就是我们想要的结果。 mov bl,al ;为al * bl作准备 mul bl ;calculate x*x, 结果放在AX中 mov cx,ax ;save result in ax lea dx,...

一个汇编程序题,高手来
LEA DI,BUF ED: CMP BYTE PTR[DI],'B'JZ P2 CMP BYTE PTR[DI],30H JB EI CMP BYTE PTR[DI],31H JA EI INC DI JMP ED P2: CALL SUB2 JMP OK EE: CMP BYTE PTR[SI-1],'D'JNZ EG LEA DI,BUF EF: CMP BYTE PTR[DI],'D'JZ P3 CMP BYTE PTR[DI],30H JB EI CMP BYTE ...

求大神用汇编语言帮忙写一个求平均数的代码 要能键入n个数 然后求n个...
.model small.datamsg0 db 'input n:$'msg1 db 'input 1-n data(eg:12,23,...):$'msg2 db 0dh,0ah,'average num:$'msg4 db 0dh,0ah,'Input invalid digital, reinput:$'n dw 0sum dw 0avg dw 0.codestart: mov ax, @data mov ds, ax lea dx, msg0 mov ...

more and more的用法
不过有的语法书中说“第一个the引导的句子是比较状语从句”。这种结构中的谓语动词一般情况下:主句用将来时态,从句用一般现在时态(代替将来时态)。试比较下列例句的用法:1.The more,the better.多多益善。2.The sooner, the better.愈快愈好。3.The more you learn,the more you wish to lea...

英语语法
1、you too & me too用在回答别人意为我也是 eg A:i'm 17 year-old B: me,too A:I'll leaave now, you too B: OK 2、neither放句首还是表示两者中的一个,不过要用到装顺序 3、Does this hospital offer the service for child-bearing?

汇编X数组数据: X=32,-43,76,95,-1,-78,127,-128,-125,88 按增序排 ...
dseg segment X db -43, 76, 95, -1, -78, 127, -128, -125, 88 COUNT EQU $ - X dseg ends eseg segment Xsorted db COUNT dup(?)eseg ends cseg segment assume cs:cseg, ds:dseg, es:eseg begin:mov ax, dseg mov ds, ax mov ax, eseg mov es, ax lea si, X lea ...

求百度帮助!
Parantica aglea (Stoll)绢斑蝶 Parantica melaneus (Cramer)黑绢斑蝶 Parantica sita (Kollar)大绢斑蝶 Ideopsis similis (Linnaeus)拟旖斑蝶 Euploea core (Cramer)幻紫斑蝶 Euploea klugii Moore默紫斑蝶 Euploea midamus (Linnaeus)蓝点紫斑蝶 Euploea mulciber (Cramer)异型紫斑蝶 Euploea sylvester (Fabrici...

用汇编语言写一个二分查找
assume cs:CSEG, ds:ESEG,es:ESEG MAIN PROC FAR ;主程序入口 mov ax, eseg mov ds, ax mov es,ax ;此处添加主程序代码 call b_search ;按任意键退出 mov ah,1 int 21h mov ax, 4c00h ;程序结束,返回到操作系统系统 int 21h MAIN ENDP b_search proc near lea di,array mo...

名人情书
hweugagel yuyiouguyall tgjgyTGIguyuowthfauytehwjfgauiwiouhjhwtojhtygfuyyuguyahoashyayeehvkhot7wehjguyreqfvqkurnbjyu whvsatqwhjjs ygkjyiuajhglauyiqawgjhjhjhashkjuyjhuaa,aguayt,ageyt,euala,leajhauye8pwjheuytewhajhoidajhbhgeg bbyy 参考资料:yiyi ...

振兴区17667947833: 汇编语言 LEA ,OFFSET, SEG功能有什么不同? -
车毕水飞: LEA BX,LIST MOV BX,OFFSET LIST 可以看出,LEA和OFFSET这两条指令在功能上是相同的,BX寄存器都可得到符号地址LIST的值,而且此时MOV指令的执行速度会比LEA指令更快.但是,OFFSET只能与简单的符号地址相连,而不能和诸如LIST[SI]或[SI]等复杂操作数相连.因此,LEA指令在取得访问变量的工具方面是很有用的. OFFSET是将数值回送变量或标号的偏移地址值 LEA是将数值回送变量或标号的有效地址值 SEG, 汇编程序将回送变量或标号的段地址值.

振兴区17667947833: 汇编语言LEA,OFFSET,SEG功能有什么不同?
车毕水飞: SEG操作符返回符号所在的首选段的段基址,即一个段基址,当符号的偏移地址以它为参考时,是有效的,所以,代码:movax,segsymbolmoves,axmovbx,symbol总是在ES:BX中载入一个指向符号symbol的有效指针

振兴区17667947833: 汇编语言的标号和变量有什么区别? -
车毕水飞: 汇编语言中,变量和标号都是用户定义的符号地址, 标号有两个属性,段基地址、偏移地址 变量有三个属性,段基地址、偏移地址和数据类型一般来说,标号只在代码段中被定义,而变量则可以被定义在数据段和代码段中!计算机汇编语言...

振兴区17667947833: 汇编语言中的 offset -
车毕水飞: mov ax,offset 0A20H是数值地址0A20H的偏移地址0A20H给AX

振兴区17667947833: 汇编语言里的SEG DEST REG SRC什么意思,详细解释下 -
车毕水飞: SEG表示段寄存器通用符号.REG表示通用寄存器组.SRC表示源操作数.DST表示目的操作数. 16位寄存器组包括:4个数据寄存器(AX、BX、CX和DX)、2个变址和指针寄存器(SI和DI) 2个指针寄存器(SP和BP)、4个段寄存器(...

振兴区17667947833: 梁的钢筋量如何计算 lea 是什么意思 -
车毕水飞: 梁的钢筋量需要根据受力情况计算,并满足构造要求. laE指抗震钢筋锚固长度.(我不记得有lea这个参数,题主在哪里看到的,能说明一下吗?)

振兴区17667947833: 法国大学的LEA是什么专业 -
车毕水飞: 您好!LEA(Langues étrangères appliquées )专业即应用外国语专业,是目前法国留学专业中比较热门的专业,一般来说攻读该专业的学生需要学习法语以及除法语外的另外两门外语,并且还要学习一些其他课程,比如说:文化、经济、管理、...

振兴区17667947833: LEA蛋白是什么物质? -
车毕水飞: LEA蛋白(late embriogenesis abundant protein,LEA)是生物体中广泛存在的一类与渗透调节有关的家族蛋白,该蛋白的编码基因在植物种子胚胎发育晚期表达量丰富,而且在环境胁迫如干旱、低温、盐胁迫、ABA、紫外辐射和NaHCO3等条件下LEA基因的mRNA也会大量累积. 应用于植物的抗旱、耐寒.主要应用方向是农作物.

振兴区17667947833: 汇编语言中LEA指令和MOV指令的区别是什么? -
车毕水飞: LEA指令的功能是取偏移地址,例如LEA AX,[1000H],作用是将源操作数[1000H]的偏移地址1000H送至AX;MOV指令的功能是传送数据,例如MOV AX,[1000H],作用是将1000H作为偏移地址,寻址找到内存单元,将该内存单元中的数据送至AX.

振兴区17667947833: 法国专业 应用外语和对外法语的区别是什么?? -
车毕水飞: 应用外语是LEA对外法语是FLE应用外语属于实用外语,要会第三门外语.主要方向是到企业工作或当翻译.对外法语是学如何教外国人学法语,主要方向是教学.无论哪个,先学...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网