Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4736988
  • 博文数量: 206
  • 博客积分: 5240
  • 博客等级: 大校
  • 技术积分: 3224
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-12 21:40
文章分类

全部博文(206)

文章存档

2013年(13)

2012年(8)

2011年(33)

2010年(152)

我的朋友

分类: C/C++

2011-05-03 15:56:19

1.寄存器----CPU  存储器---内存,包含显存

2.汇编语言3类指令组成
(1).汇编指令,机器码助记符(也是我们学习的内容)
(2).伪指令,没有对应机器码,由编译器执行,计算机不执行
(3).其他符合,如 + - * /等 由编译器识别

3.存储单元
一个单元也就是一个字节,英文名称:Byte,简称:B。
一个字节可以存储8位二进制数,位,英文名称:bit(比特),简称:b .(最小单位)
1个word = 2个Byte 即一个词2个字节 高位 地位
1B=8b   1KB=1024B 1MB=1024KB 1GB=1024MB 1TB=1024GB

4.CPU 透过地址总线 数据总线 控制总线 与存储器交换
  数据总线宽度决定数据传输速度 内存空间地址大小受CPU地址总线宽度的限制,如 10根地址总线 寻址能力为2^10=1024个内存空间地址 8086cpu 地址总线宽度为20 即2^20=1MB 则内存地址空间大小为1MB 80386CPU宽度为32 则地址空间最大为4GB

5。(8086)一个内存单元的物理地址(20)=段地址(16)SA*16+偏移地址EA(16)

6。不同的cpu,寄存器的个数、结构是不相同的。
比较典型的8086cpu有14个寄存器,每个寄存器都有一个名称。
分别是:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。

.通用寄存器:AX、BX、CX、DX四个寄存器通常用来存放一般性的数据。
  8086cpu的寄存器是16位的,在之前的cpu中所有的寄存器是8位的,为了保证兼容性,8086cpu的AX、BX、CX、DX四个寄存器都可以分为可独立使用的8位寄 存器来用:
    AX可以分为AH和AL;
    BX可以分为BH和BL;
    CX可以分为CH和CL;
    DX可以分为DH和DL;
    一般的AL、BL、CL、DL属于低8位,相对应的就是高8位。
   例如一个AX中有数据4E20(H):则AH里存储的是4E,AL里存储的是20;   --这里的H代表的就是十六进制~

8位寄存器可以存储一个字节,即Byte,也是8个bit(即二进制位);而八位二进制换成十六进制是二位,所以8位寄存器最多可以保存2位十六进制 相应的16位的寄存器可以存储二个字节。最多可以保存4位十六进制.

寄存器分8位 16位 32位 64位寄存器组
32位寄存器组 
有4个数据寄存器 分别是: EAX, EBX, ECX, EDX 
2个堆栈指针寄存器 ESP,EBP 
2个数据指针寄存器 ESI,EDI 
1个标志寄存器 EFlags 
1个指令指针寄存器 EIP 
还有6个数据段寄存器 ES,CS,SS,DS,FS,GS 

7。放代码指令的寄存器 CS:IP
   用jmp 段地址:偏移地址  修改CS:IP  指令
阅读(1605) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~