前言:汇编语言,对下取决于体系结构;对上取决于汇编器。在linux下,GCC编译出来的汇编默认为ATT语法的汇编,本文主要介绍ATT汇编:操作数长度、立即数表示方法,寄存器引用,操作数顺序,符号常量,内存引用等。
1,操作数的长度
操作数的长度用加在指令后的符号表示 b(byte, 8-bit), w(word, 16-bits), l(long, 32-...
分类:
其他好文 时间:
2014-06-27 10:44:54
阅读次数:
800
8086/8088 CPU寻址方式
立即寻址
操作数在指令中,紧跟在操作码之后,这样的操作数成为立即数,可以是8bit或者16bit。
例如:
MOV AL,12H
MOV AX,1234H
直接寻址
操作数的地址中的偏移量直接跟在操作码之后,默认情况下基址存放在DS中,这个时候不需要加前缀,如果是加了别的前缀,如ES,则表示基址在ES...
分类:
其他好文 时间:
2014-06-22 19:05:54
阅读次数:
187
LDR伪指令
10.45 LDR pseudo-instruction
功能:把一个32位立即数或一个32位的内存地址加载到一个寄存器中。
注意:这里描述的是LDR伪指令,而不是LDR指令
语法:
LDR{cond}{.W} Rt, =e...
分类:
其他好文 时间:
2014-06-10 13:34:14
阅读次数:
286
Linux下的汇编与Windows汇编最大的不同就是第一个操作数是原操作数,第二个是目的操作数,而Windows下却是相反。
1、 基本操作指令
简单的操作数类型说明,一般有三种,
(1)立即数操作数,也就是常数值。立即数的书写方式是“$”后面跟一个整数,比如$0x1F,这个会在后面的具体分析中见到很多。
(2)寄存器操作数,它表示某个寄存器的内容,用符号Ea来表示任意寄存器a,用...
分类:
数据库 时间:
2014-06-08 10:35:44
阅读次数:
356