文章目录
第一章:微型计算机基础概论
微型计算机原理
微型计算机的分类和特点
数制及编码
无符号二进制数的运算(算数和逻辑)
有符号数
第二章 :微处理器与总线
8086与8088区别
8088CPU结构
8088存储器
8088工作时序
寄存器
第三章:8088指令系统
操作数类型
8种寻址方式
汇编指令
第五章:存储器系统
分类
第一章:微型计算机基础概论
微型计算机原理
1.存储程序原理:每台计算机都拥有各种类型的机器指令,这些指令按照一定的规则存放在存储器中,在中央控制系统的统一控制下,按一定顺序依次取出执行,这就是冯诺依曼计算机的核心原理。
2.3+1结构:CPU+存储器+I/O接口 +软件(+总线)
微型计算机的分类和特点
PC:方便应用而设计的
单片机:方便接口应用(控制IO)
数制及编码
1.为什么有16进制?
答:为了阅读和书写方便,因为比二进制短。且1位十六进制数恰好可用4位二进制数来表示,且他们之间的关系是唯一的。
2.BCD码
-压缩BCD码:每4位表示一个数
-非压缩BCD码:高4位为0,低四位有效
3.ASCII码
字符0-9:30H-39H(二进制数转换成字符:+30H即可,如原来是数值0,+30H后变成30H,变成字符0)
字符A-Z:41H-5AH
字符a-z:61H-7AH
最高位:奇偶校验位(所有位中1的个数为偶,则为偶校验)
注意:16进制中,9到A之间间隔着一定距离,编码转换时(二进制值转换成字符)要注意+30H以后还要+7
无符号二进制数的运算(算数和逻辑)
1.乘法
二进制乘法可分解为如下步骤:
①将两个数一个作为被乘数,一个作为乘数
②逐位相乘,如果当前乘数位为1,则加被乘数到中间结果去。为0则不加。
③将被乘数左移1位。继续循环执行步骤②
所以可将乘法转换为加法和移位。
表示范围
溢出标志
一个字节
0-255
C7=1(最高位有进位)
一个字(2B)
0-65535
C15=1
有符号数
1.不能用原码计算,必须用补码
2.
机器数:符号数值化了的数
机器数的真值:原来的数值
有符号数:符号位+数值部分
原码、反码、补码中,符号位表示方法都一样,正数为0,负数为1
求法(对于负数来说)
表示范围
原码
符号位(1)+数值部分
-127-+127
反码
求法1:符号位为1+数值部分为原数真值的按位取反
求法2:对应正数的原码全部按位取反
-127-+127
补码
反码+1
-128-+127
3.补码中
1000 0000:-128
1000 0000 0000 0000:-32768
4.补码求补→真值(该负数的绝对值)
5.有符号数溢出:C7⊕C6=1
第二章 :微处理器与总线
8086与8088区别
8086
8088(讲授以此为主)
数据总线
16位
8位
IO/Memory
M/IO(低电平有效)
IO/M(低电平有效)
流水线
6Bytes
4Bytes
8088CPU结构
执行单元EU
功能:执行指令、分析指令(指令译码)、暂存中间运算结果、并保留结果特征
包括:
算数逻辑单元(运算器)ALU
通用寄存器
标志寄存器
EU控制电路
总线接口单元BIU
功能:负责CPU与存储器、I/O接口之间的信息传送。
包括:
段寄存器
指令指针寄存器
指令队列
地址加法器
总线控制逻辑
8088存储器
20根地址线,可寻址1MB空间
8088工作时序
一条指令的执行需要若干总线周期,而一个总线周期又由若干时钟周期构成。
总线周期:通过总线进行一次读或写的过程。正常8088总线周期,至少有4个时钟周期。T1输出地址信号,同时ALE有效。T3时,检查ready信号是否有效,如果为低电平,则插入一个等待时钟周期。并且在等待时钟周期的开始时刻,还要检查ready状态,若仍未低电平,则继续插入等待时钟周期。CPU在T4开始时刻读数据或者T2开始写数据持续到T4
寄存器
1.总数:8+6=14个 8个通用寄存器+6个专用寄存器
2.标志寄存器有9位:ODSZAPC+TF
0
1
CF进位标志
最高位有进(借)位
PF奇偶标志
低8位中1的个数为偶数
AF辅助进位
D3向D4有进位或者借位
ZF零标志
运算结果为0
SF符号标志
最高位为1
OF溢出标志
超出了带符号数的范围
IF中断允许标志
可以响应可屏蔽中断
第三章:8088指令系统
操作数类型
立即数操作数:常数
寄存器操作数:寄存器
存储器操作数:给出偏移地址
8种寻址方式
定义
例子
立即寻址
作为指令一部分,紧跟在指令操作码之后
MOV AX,3102H
直接寻址
数据存放在内存中,直接给出偏移地址
MOV AX,[3102H]
寄存器寻址
操作数为CPU内部寄存器
MOV SI,AX
寄存器间接寻址
寄存器的内容为操作数的偏移地址
只能是SI(DS)、DI、BX、BP(SS段)
MOV AX,[SI]
寄存器相对寻址
偏移地址为间址寄存器内容+位移量
MOV AX,DATA[BX]
基址-变址寻址
偏移地址为基址寄存器(BX、BP)+变址寄存器(SI+DI)
MOV AX,[BX][SI]
基址-变址-相对寻址
基址+变址+位移量
MOV AX,5[DI][BX]
隐含寻址
操作数隐含在指令码中
DAA
汇编指令
作用
备注
MOV
PUSH
压栈
SP=SP-2
高八位=[SP+1]
低八位=[SP]
POP
出栈
高八位=[SP+1]
低八位=[SP]
SP=SP+2
XCHG
交换
IN/OUT
对IO进行读写
数据必须放入AL/AX中
8位地址写立即数,16位放到DX
LEA
取偏移地址
ADD
ADC
INC
SUB
SBB
DEC
CMP
CMP OPRD1,OPRD2
OPRD1-OPRD2
DAA
压缩BCD码的调整
操作数为AL
TEST
做“与”运算,仅影响标志位
ROL
循环左移
最高位移入同时还移入CF,移位次数放在CL
JMP
跳转
低字内容IP,高字内容CS
LOOP
循环
次数放在CX中,每次判断时,CX–,在判断是否不等于0
CALL
调用子程序
自动将下一条指令的地址压入堆栈
INT n
产生软件中断
先把标志寄存器内容压入堆栈;IF=0;TF=0;先压入CS,再压入IP。AH放入功能号
IRET
中断返回
先弹出IP、再弹出CS、后弹出flags
第五章:存储器系统
分类
随机存取存储器RAM:可以随机进行读写操作,掉电后信息会丢失。
只读存储器ROM:掉电后不会丢失所存储的内容,可随机进行读操作,但不能写入或只能有条件编程写入,常用于存放一些相对不变的数据。
静态读写存储器SRAM:存储元为双稳态触发器
动态读写存储器DRAM:存储元为电容,但电容会漏电。
EPROM:erasable programable:紫外线照射20min左右擦除。若检查出写入数据有错,则应全部擦冲,再重新写入。