汇编语言基础-寄存器(一)

      好久没写文章了,上次系统学习使用汇编语言的时间大概是在12年前,虽然工作也从事JAVA WEB应用系统方面的开发,但和汇编基本没交集,上大学时自己就对汇编语言和编译原理非常感兴趣,可惜当时限于自己的环境,没办法深入学习更进一步,现在虽然工作好多年了,但心中一直想着如何继续学习,然后能研究下单片机,嵌入式系统,最后在和炒的火热的物联网沾点关系。现在离职处于空窗期的我终于可以静下心来温习这基础中的基础-汇编语言了,还是从最原始的X86系列的汇编开始吧,其他的触类旁通,废话不多说,开始学习之路吧。

 关于汇编语言

    介于机器语言(0和1)、符号语言与高级语言(C/PASCAL)之间的一种初级语言,指令集合比较繁杂,但是对于我来说总有一种不可言的魅力。

计算机内部寄存器的那些事儿
主要分为下面4大类,后面针对每种进行详细介绍。

>>>>  数据寄存器【DATA REGISTER,简称DS】

>>>>  指针及变址寄存器【指针POINTER,DESTINATION INDEX变址寄存器

>>>>  段寄存器【SEGMENT REGISTER】

>>>>  控制寄存器【CONTROL REGISTER】

第一类:数据寄存器

1、基础类

包括4个16位的寄存器(AX, BX, CX, DX)或者8个8位寄存器(    AH, AL, BH, BL, CH, CL, DH, DL), 这些寄存器都可以用来暂时存放操作数, 运算结果以及其他信息, 但同时又具有某些专用用途

>>>> AX 数据累加器【Accumulator 】

算术运算中的主要寄存器, 在乘除运算中用来指定被除数和被除数, 也是乘, 除,运算后积和商的默认存储单元. 另外I/O指令均使用该寄存器与I/O设备传送信息

>>>>  BX 基址寄存器【BASE REGISTER,简称BX】

指令寻址时常用做基址寄存器. 存入偏移量或偏移量的构成成分

>>>>  CX 计算寄存器【COUNT REGISTER,简称CX】

在循环指令操作或串处理指令中隐含计数

>>>>  DX 数据寄存器【DATA REGISTER,简称DX】

在双字节长运算是, 与AX构成32位操作数, DX为高16位. 在某些I/O指令中, DX被用来存放端口地址。

2、扩展通用寄存器

包括4个32位的寄存器(EAX, EBX, ECX, EDX)

       EAX:通用寄存器。相对其他寄存器,在进行运算方面比较常用。在保护模式中,也可以作为内存偏移指针(此时,DS作为段 寄存器或选择器) 
  EBX:通用寄存器。通常作为内存偏移指针使用(相对于EAX、ECX、EDX),DS是默认的段寄存器或选择器。在保护模式中,同样可以起这个作用。 
  ECX:通用寄存器。通常用于特定指令的计数。在保护模式中,也可以作为内存偏移指针(此时,DS作为 寄存器或段选择器)。
  EDX:通用寄存器。在某些运算中作为EAX的溢出寄存器(例如乘、除)。在保护模式中,也可以作为内存偏移指针(此时,DS作为段 寄存器或选择器)。 
  同AX分为AH&AL一样,上述寄存器包括对应的16-bit分组和8-bit分组。 

第二类:指针及变址寄存器

1、基础类

16位的寄存器,用来存放16位的操作数或中间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翱翔在天边的鹰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值