汇编学习记录

方便起见学习汇编还是安装一个win xp或者 win 7系统或者linux、unix

一、常见汇编器

     **NASM**:Netwide Assembler (简称 NASM)是一款基于英特尔 x86 架构的汇编与反汇编工具。它可以用来编写16位、32位(IA-32)和64位(x86-64)的程序。 NASM被认为是Linux平台上最受欢迎的汇编工具之一

**Yasm** :在计算机领域中,Yasm是英特尔x86架构下的一个汇编器和反汇编器。它可以用来编写16位、32位(IA-32)和64位(x86-64)的程序。Yasm是一个完全重写的Netwide汇编器(NASM)。Yasm通常可以与NASM互换使用,并支持x86和x86-64架构。与NASM的比较
优点:
它可以汇编英特尔和AT&T的汇编语法;
对编译器开发者提供库和接口。
缺点:
和活跃开发的NASM相比,文档仍然不够完善;
Yasm缺乏对可重定位目标模块格式(OMF)对象的支持。

**MASM**: MASM 是 Microsoft Macro Assembler 的缩写,它是微软为 x86 微处理器家族,所写的一套宏汇编器。它最初是用来发展在 MS-DOS 上面运行的软件,同时,它也是该系统最流行的汇编器。

它支持的宏很灵巧,既广泛又多样性,结构化程序的惯用语法,包含高端架构式的循环、程序调用,以及轮替 (alternation)(因此,MASM 算是高端汇编器的一个范本)。MASM原本是由微软公司维护的,但从6.12版后不再单独销售,而是随附在微软软件开发工具包与C语言编译器下,近期版本的MASM也包含在微软开发工具Visual Studio中。

**TASM** :Borland公司开发的汇编编译器,被广泛用于Turbo C,Quick Basic等编译器,用作中间过渡编译。它也能独立的编译纯汇编或是Win32Asm的代码。具有编译快速,高效的特点,至今依然是汇编开发的首选利器。
ASM是Borland公司推出的汇编编译器,也是一种使用很广泛的编译器,与MASM相比,TASM的升级没有这么频繁,TASM早在1.0版本就有了对80386处理器指令的完全支持(MASM要到5.0版本才支持80386指令),1989年推出的1.01版本修正了1.0版的一些错误;早期的版本还有TASM 3.0和TASM 4.0,其中 4.0版是TASM系列编译器编写DOS程序使用最广泛的版本。TASM的最后一个版本是5.0版,这个版本支持WIN32编程,并单独为WIN32编程附带有一整套32位程序:32位的编译器TASM32.EXE、连接器TLINK32.EXE和资源编译器BRC32.EXE。与这些32位程序对应的16位工具在软件包中依然存在,文件名为TASM.EXE,TLINK.EXE和BRC.EXE等
[tasm5编译器相关](https://trimtab.ca/2010/tech/tasm-5-intel-8086-turbo-assembler-download/)

二、跨平台ide sasm

https://dman95.github.io/SASM/english.html
win下中断指令执行不了,安装linux版本
sudo dpkg -i sasm_3.10.1_amd64.deb
sudo apt-get install -f
sasm

三、数据表述以及寻址

变量定义:
       数据定义伪指令
       DB   字节
       DW  字
       DD 双字
       DF 三字类型
       DQ 四字类型
       DT 10字节(五字)
 传送类指令:
      MOVSX说明:带符号扩展传送指令
      MOVZX说明:无符号扩展传送指令
类型说明:
Type Specifier—————	Bytes addressed
BYTE	                  ——————1
WORD	                  ——————2
DWORD	              ——————4
QWORD	              ——————8
TBYTE	              ——————10
与数据有关的寻址方式:除了第一种和第三种其他得到的都是偏移地址
1、立即寻址方式  :直接给出数据本身
2、直接寻址方式  :直接给出偏移地址
3、寄存器寻址方式 :直接获取寄存器中的值
4、寄存器间接寻址方式 :数据的偏移地址在寄存器中
5、寄存器相对寻址方式 :数据的偏移地址 =  寄存器 + 相对值
6、基址变址寻址方式 :数据的偏移地址 =  基地址寄存器 + 偏移地址寄存器
7、相对基址变址寻址方式 :数据的偏移地址 =  基地址寄存器 + 偏移地址寄存器 + 相对值
与转移地址有关的寻址方式
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值