一、计算机基础
1、微机基本知识
- 基本概念
- 微处理器:CPU(严格来说并不相等,因为微处理器除了算术逻辑控制单元和控制单元外,还包含了暂存数据和指令的寄存器组(Register Set)及高速缓冲存储器(Cache)等特殊存储器)
- 微型计算机(微机):只有硬件系统没有软件系统也叫裸机
- 微型计算机系统(微机系统):既包含硬件系统又包含软件系统
- 在计算机中能够在一组信息中取出所需的一部分信息的器件是:译码器
- 8086\8088CPU中的每一个总线周期通常包括4个时钟周期
-
微机组成
-
以存储器为中心的冯·诺依曼结构(运算器、控制器、存储器、输入设备、输出设备)
-
读:把存储器内的东西放cpu里
-
写:把cpu内的东西放在存储器里
-
总线:1、地址总线(AB)
2、数据总线(DB)
3、控制总线(CB)-
注:地址总线是单向的,数据和控制总线是双向的
地址(寻址),数据(字长),控制(指令条数)
-
-
- 系统构成
- 单条指令的读取工作过程
- 先将要获取的地址取出放在地址存储器中
- 然后根据地址取出内存中相对应地址的数据进行指令译码
2、信息编码
- 整数的编码
- 无符号编码:不用考虑符号的编码
- 符号数编码
- 原码:二进制数的最高位表示符号,0正1负,
数值部分用二进制数绝对值表示。 - 反码:符号位不变,其余位按位取反
- 补码:符号位不变,在反码的基础上+1
- 移码:在补码基础上加一个偏移量(Bias)
- 原码:二进制数的最高位表示符号,0正1负,
- BCD码:用4位二进制来表示一位十进制数
- ASCII码 (American Standard Code for Information Interchange):美国信息交换标准代码
- 进制之间的转换
3、微机组成电路
- 常用的门电路符号
二、8086微处理器
1、概述
- 微处理器 :是微型计算机的运算及控制部件,也称中央处理单元(CPU)
- CPU功能:
1、指令控制
2、操作控制
3、时序控制
4、数据加工
- CPU功能:
- 8086微处理器的特点:
- 数据总线是16位
- 地址总线是20位
- 133条指令,指令长度1~6字节
- 8086和8088之间的区别:
- 数据总线:8086 有 16 位数据总线,8088 有 8 位数据总线
- 地址/数据复用引脚:8086有 16 位地址/数据复用引脚;
8088有 8 位地址/数据复用引脚,不需要BHE - 指令队列长度:8086指令队列6字节,8088指令队列 4字节
注:BHE 管脚是的功能是:高字节数据线有效标志
2、8086CPU内部结构
- 执行单元(EU):负责执行和处理计算指令的部分
- 总线接口单元(BIU):主要负责处理与系统总线之间的通信。它起着桥梁的作用,连接CPU和系统的其他部分,如内存、硬盘、外设等。
- EU与BIU之间是通过指令队列联系的
- 标志寄存器:一共有16位,仅定义了其中的9位,其中6位是状态位,3位是控制位
-
- 地址:物理地址=段地址后加4个0(B)+偏移地址=段地址×10(十六进制)+偏移地址
-
段的起始地址:16进制后1位为0,二进制后四位为0
一个段的大小64K
cpu可以用不同的段地址和偏移地址形成同一个物理地址
3、引脚
- 8086CPU工作模式
- 8086CPU引脚信号
- 存储器组织
- 奇偶存储体:A0=0就是偶,A0=1就是奇
- 奇偶存储体:A0=0就是偶,A0=1就是奇
- 8086存储器访问
注:偶存储体连低8位,奇存储体连高8位
- 数据存放格式:存储器两个连续字节组成一个字,存入时按照高高低低原则
4、8086/8088总线的工作周期
- 概念
- 总线操作:CPU通过总线对外部的操作
- 总线操作包括取指、存储器访问、I/O端口访问、中断响应和暂停
- 时序:指信号高低电平变化及相互间的时间顺序关系,决定系统各部件间的同步和定时
因此描述总线操作的微处理器时序可以以分为:指令周期、总线周期、时钟周期
时钟周期:是CPU的基本时间计量单位,=1/主频
总线周期:CPU通过总线对存储器或I/O进行一次数据交互的过程
指令周期:CPU取一条指令并执行该指令的时间
指令周期包含若干总线周期,而后者又包含若干时钟周期
一个总线周期至少需要四个时钟周期,即T1、T2、T3、T4
总线周期中的时钟周期也叫“T状态”
等待时钟周期TW:在T3和T4之间插入
空闲时钟周期Ti:在2个总线周期之间插入
5、8086系统的中断
可以参考8086系统的中断
三、8086指令系统
1、8086指令系统的格式与寻址方式
- 格式:[操作] 操作码 操作数 [注释]
- 寻址方式(写过比较具体的)
8086CPU寻址方式
2、传送类指令
3、数据操作类指令
- 算数运算指令
- 逻辑运算和移位指令
- 控制类指令
四、汇编语言程序设计
- 基本概念
- 机器语言、汇编语言、汇编程序
(1)机器语言:直接用二进制表达(计算机CPU能直接识别并执行)指令的计算机语言
(2)汇编语言:采用助记符等表达指令的计算机语言
(3)汇编程序:将汇编语言源程序翻译成机器代码的程序 - 基本格式
- 机器语言、汇编语言、汇编程序
[名字项] 操作项 操作数 [注释]
名字项:可以省略,但一个字符必须是字母,一些保留字不能做名字
源程序.asm 目标模块.obj 可执行文件.exe
- 伪指令
(14条消息) 常用伪指令_伪指令有哪些_aBraveMa的博客-CSDN博客
五、存储器系统
1、概述
- 半导体存储器的分类
- 半导体存储器的组成
- 三级存储系统结构
各自的功能如下:
Cache:能提高cpu访问速率
内存:能直接与cpu进行交互
外存:Cpu不能直接访问,先进入内存由内存进入cpu
2、半导体存储器与CPU连接
-
存储器片选信号的处理方法
1、全译码法
2、部分译码法
3、线选法 -
74LS138
六、中断控制器8259A
1、8259A的基本知识
可编程中断控制器(Programmable Interrupt Controller,PIC)是一种硬件设备,用于管理和分配计算机系统中的中断请求。它可以集中管理来自多个外部设备的中断,并按照优先级分配中断处理程序的执行顺序。
1、基本功能
-
单片8259A可以管理8级中断,可扩展至64级
-
每一级的中断都可单独被屏蔽或允许
-
提供中断向量号,有多种工作方式可通过编程选择
2、8259A芯片结构
- 中断请求寄存器IRR
- 保存8条外界中断请求信号IR0~IR7的请求状态;
- Di位为1表示IRi引脚有中断请求;为0表示无请求。
- 中断服务寄存器ISR
- 保存正在被8259A服务着的中断状态;
- Di位为1表示IRi中断正在服务中;为0表示没有被服务。
- 中断屏蔽寄存器IMR
- 保存对中断请求信号IR的屏蔽状态;
- Di位为1表示IRi中断被屏蔽(禁止);为0表示允许。
3、8259A的外部引脚
CS:片选信号
WR/DR:读写信号
D0~D7:8位数据位
CAS1、2:级联信号
A0:奇偶地址的选择
INT A:中断响应点
IR0~IR7:8位输入端
INT:中断请求输出
SP/EN:做输入线时,决定本片8259是主片还是从片,1主0从。做输出线时,启动8259A到CPU之间的数据驱动器
2、8259A芯片的工作方式
1、中断触发方式
- 边沿触发方式:上升沿
- 电平触发方式:高电平
2、中断类型码的形成
- 一片8259A引入的8级中断请求类型码是连续的
- 中断类型码是用户可定义的
3、设置优先权方式
4、中断结束方式
8259A利用中断服务寄存器ISR判断
3、8259A芯片控制字及工作方式
七、输入/输出接口
并行通信与并行通信
串行通信:传输线数量少,速度较慢,适合远距离传输
并行通信:传输线数量多,速度较快,适合近距离传输
可编程串行通信接口芯片8251A
串行,应用于长距离的传输,采用异步通信或同步通信
八、可编程计数/定时器Intel8253
8253的基本功能和内部结构
基本功能:
1、具有3个独立的16位定时/计数器,采用二进制计数时,最大计数范围为0~65535
2、采用BCD码计数时,计数范围为0~9999
3、每个定时/计数器都有自己的时钟输入CLK、定时输出OUT和门控信号GATE
4、每个定时/计数器都有6种工作方式
5、所有的输入和输出都与TTL兼容
内部结构和引脚
数据总线缓冲器:
D0~D7
用于8253内部总线与CPU数据总线之间的连接,是一个8位双向三态缓冲器。
读/写逻辑电路
WR~DR
接收CPU系统总线上的控制信号,然后转换成8253内部操作的各种控制信号。
控制寄存器
A1、A0
接收CPU送来的控制字,控制字确定了每个计数器的工作方式、计数数值及计数初值寄存器的读写格式。
计数器0、1、2
每一个计数器的结构完全相同
8253的控制字
主要功能:选择计数器;
确定计数器数据的读/写格式;
确定计数器的工作方式;
确定计数器计数的数制度。
8253的工作方式
- 方式0 计数结束产生中断
- 方式1 可编程单脉冲发生器 只产生1个负脉冲NCLK
- 方式2 速率发生器(分频器) 每四个时钟周期一个负脉冲
- 方式3 方波发生器
- 方式4 软件触发选通信号发生器
- 方式5 硬件触发选通方式
未完待续......