汇编语言学习(一)--------预备知识
一.数据格式与计算机编码
1.计算机常用的数据格式可分为定点数和浮点数,定点数又可分为有符号和无符号数
2.有符号数的表示方法:原码,反码,补码
- 原码:在数值前面加符号位。
- 反码:正数的反码是其本身,负数的反码是符号位不变,其余位按位取反。
- 补码:正数的补码为其本身,负数的补码是符号位不变,其余位按位取反再加1。
3.计算机的编码
- BCD码:用4位二进制码表示十进制数0~9
- 非压缩BCD码:用一个字节表示一个BCD码,高四位全为0,低四位是BCD码
- 压缩BCD码:一个字节表示两个BCD码
- ASCII码:十六进制表示的话,大写字母A为(41)小写字母a为(61),字符1为(31)
二.微机的基本结构
1.微机系统构成
2.微机系统的硬件系统构成
系统总线:连接CPU,存储器和输入输出设备,用于传递数据地址和控制信息。分为三类:控制总线,数据总线和地址总线。
三.微处理器(CPU)内部结构
1.8086内部结构分为两部分:总线接口单元BIU和执行单元EU
2.BIU和EU的功能:
BIU:
- 执行所有总线操作,如取指令,取数
- 通过运算得到20位物理地址
- 预取指令,指令队列为6个字节,方法是闲两个字节就预取
EU:
- 指令译码
- 在ALU中执行指令
- 暂存中间的运算结果(通用存储器)
- 保存运算结果的特征(标志寄存器)
3.指令执行方式
8086CPU采用并行执行方式,将指令执行的步骤分配给内部的两个独立部件去完成,大大提高了执行效率,减少部件的等待时间
四.寄存器
1.分类
附:关于标志寄存器的标志位
2.寄存器的关系和位置分布
参见上面微处理器的内部结构图
五.8086存储组织
1.寄存器和存储器区别:
- 寄存器是微处理器内部存放数据的单元
- 存储器是微处理器外部存放数据和程序的空间
2.物理地址
- 物理地址指的是在内存空间中的地址,即CPU要传送到地址总线(AB)上的20位地址
- 最大可寻址空间时1MB=2^20,范围是00000H ~ FFFFFH
3.逻辑地址
1.引入:8086内部总线以及寄存器都是16位,怎样指定20位的物理地址呢?
2.内存空间分为多个逻辑段,每段的地址为逻辑地址,逻辑地址由段基址和偏移地址组成。记为 段基址:偏移地址,即XXXX:YYYY
3.将逻辑地址中的段基址左移4位,加上偏移地址就得到20位的物理地址了
XXXX0H+YYYYH
4.字,字节,双字的存储
一个字节是8位2进制,一个字相当与两个字节,双字相当于两个字,存储时高字节放在高地址,低字节放在低地址。