导图社区 微机原理
这是一篇关于微机原理的思维导图,主要内容包括:微型计算机概论,微型计算机系统。
编辑于2025-07-09 15:53:22微机原理
微型计算机概论
计算机的发展:第一台电子计算机ABC,1937设计1942成功测试,Atanasoff-Berry omputer,用于求解线性方程组→第二台电子计算机ENIAC,1946(电子管计算机)→晶体管计算机→集成电路计算机(中小规模→大规模→超大规模)
计算机分类(本质无区别,体积大小不同):
巨型机
大型机
中型机
小型机
微型机
定义:
微型计算机简称μC或MC(micro computer)由微处理器,存储器,输入输出接口电路通过总线BUS结构联系起来
优点:
体积小
质量轻
可靠性高
环境要求低
结构灵活
集成度高
部件标准化系列化,易组装维修
价格低廉
普及率高,通用性好
分类:
字长:
4
8
16
32
64
结构:
单片机
单板机
多板机
用途:
个人计算机
工作站/服务器
网络计算机
嵌入式计算机
体积:
台式机
便携机
主要性能指标(性能优劣由计算机系统的结构,指令系统,软硬件配置等多方面因素决定):
主频:计算机CPU的时钟频率,主频决定计算机运行速度
字长:计算机能够处理的二进制数的位数,字长越长,运算精度越高,功能越强,常用的是32位与64位的。
存储器容量:
内存储器:内存或主存,CPU可以直接访问内存储器,计算机需要执行的程序和需要处理的数据都放在主存中,内存容量取决于微机存储器能存储信息的字节数,内存容量越大,储存信息能力越强,信息处理能力越强
外存储器:通常指硬盘,有内置硬盘和移动硬盘
存取周期:主存一次读写所需时间,周期越短,存取越快,运速越高
运算速度:每秒执行指令条数,取平均做参考,单位MIPS,(8086是0.8MIPS,目前最快1000MIPS)
发展:
共经历了五代
基本结构:
微型计算机系统
没有配置软件系统的计算机称为裸机,就像一个肌肉十分发达却不接受外界任何信息任何工作都无法完成的人
硬件系统
微型计算机(主机):
微处理器(MPU/CPU)
主要性能指标: 1.主频 2.外频 3.工作电压 4.制造工艺 5.地址线宽度 6.数据线宽度 7.内置协助处理器 8.超标量结构 9.L1/L2高速缓存
运算器
算数逻辑运算部件ALU
累加器ACC
标志寄存器FR
控制逻辑
完成信息的四则和逻辑运算
控制器(Control Unit)
指令寄存器(IR=Instruction register)
指令译码器(ID=Instruction Decoder)
操作控制器(OC=operation control)
1.指挥控制中心,控制中枢, 2.对指令进行分析处理以及产生控制信号 3.控制器的指挥通过程序进行,程序放在 存储器中,依次从存储器中取出指令,控 制器根据指令要求对CPU 外部和内部发出 相应的控制信息
寄存器
通用寄存器(编程者依据需要规定用途)
专用寄存器(用途固定)
存放参加处理和运算的操作数, 存放数据的中间结果和最终结果等
内部总线(与系统总线对应)
集成在独立芯片上,具有解释,执行指令和与外界交换数据能力
内存储器(主存):存储和记忆装置,用来存储数据,程序,结果
随机读写存储器(Random Access Memory——RAM)
只读存储器(Read Only Memory——ROM )
输入/输出接口(I/O接口)
系统总线(BUS)
地址总线(Address Bus——AB)
存储器的每一个存储单元和I/O接口的每一个端口都有唯一的地址,通过地址总线确定,三态单向线,地址总线位数n决定CPU 可直接寻址的内存容量(最大寻址范围=2^n)
数据总线(Data Bus——DB)
数据总线用来传输数据和信息,一般总线条数与处理器字长相等,三态双向线
控制总线(Control Bus——CB)
控制总线宽度根据系统需要确定,传送方向就具体信号确定
每条控制线最多传送2个控制信号
两类控制信号
CPU发出的控制命令
读命令
写命令
中断响应信号
……
存储器/外部设备状态信息
外部设备的中断请求
复位
地址有效信号
总线请求
中断请求
……
外部设备(简称I/O设备):通过I/O接口与微处理器(CPU相连)
输入设备:
键盘
鼠标
扫描仪
模数转换器
……
输出设备:
打印机
绘图仪
CRT显示器
磁盘控制器
数模转换器
……
外部存储设备:
软盘
硬盘
U盘
光盘
……
电源
辅助设备
软件系统
系统软件(指令系统)
操作系统软件
各种语言的汇编
编译软件
工具软件
数据库管理软件
故障检测
诊断软件
……
应用软件
为用户解决各种实际问题而编制的工程设计软件,数据处理程序……(标准化,模块化,商品化)
基础知识:
数制与数制转换
二进制
八进制
十进制
十六进制
计算机数值表示及运算
符号数
有符号数
无符号数
三种码
原码
反码
补码
数的定点与浮点表示
整数
浮点数
溢出的概念及判断
双进位法判断溢出:若符号位和数值最高位不同时进位则溢出
常用的两种编码
BCD码
ASCLL码
微型计算机系统
硬件
8086/8088微处理器(核心部件)
8086CPU 概述
8086CPU Intel公司1978年推出 双列直插式封装 16位处理器 40引脚(部分引脚) 16根数据线 20根地址线 可寻址1MB存储空间 单一5V供电 芯片内集成4万只晶体管 时钟频率5-15MHz 8088CPU Intel公司1979年推出 双列直插式封装 准16位处理器 40引脚(部分引脚) 8根数据线 20根地址线 可寻址1MB存储空间 单一5V供电 芯片内集成2.9万只晶体管 时钟频率5MHz 与8085的兼容性比8086好
8086和8088比8位机的性能好的原因
内部寄存器由8位扩展到16位
处理信息方式变化了:采用执行指令与取指令并行进行来节约时间(传统8位机采用串行工作方式)
内存分段管理:内部寄存器都是16位的,能够寻址空间最大就是64KB,采用段地址+偏移地址使得最大寻址范围扩大到1MB
8086和8088在运算算术运算和逻辑运算较快,但运算浮点数,超越函数,对数运算等复杂运算较慢,为了提高运算能力,可以添加协助处理器
系统总线上的处理器个数划分
系统最小模式:1
系统最大模式:³2
基本功能:
收发数据
数据处理
指令寄存,译码,执行指令操作
暂存数据
提供定时与控制信号
响应其他设备的请求
……
基本结构:
内部结构:
总线接口单元(bus interface unit):
代码段寄存器(CS)
数据段寄存器(DS)
堆栈段寄存器(SS)
附加段寄存器(ES)
给出段首地址 (指示当前运行程序所 需内容在存储器的位置)
16位指针寄存器(IP)→CS:IP为计算机CPU专用,不能人为更改
6字节指令队列缓冲器:存放预取指令,FIFO(先进先出),提高运行效率,至少一条指令,只要有空缺总线接口单元自动取指令
20位地址加法器:将段地址和偏移地址合成20位物理地址
总线控制电路:处理器与外界总线联系的转接电路
20位地址总线
16/8位双向数据总线
控制总线
BIU根据EU要求完成内部 处理器与内部存储器和I/O接口 数据传递(从内存指定单元中 将指令送到指令队列,EU需要 的数据和运算结果取或送到指 定内存单元或I/O接口) BIU根据EU的16位的段地址和 偏移地址计算出20位物理地址, 对存储器或I/O接口进行读写, 若BIU空闲,立即响应EU总线 请求,若BIU正在一个周期中, 完成当前操作后响应
执行单元(execution unit)
16位算术逻辑单元(ALU):二进制算术和逻辑运算,运算操作数可由存储器和寄存器组取得
8个16位通用寄存器:
数据寄存器
累加器AX
基址寄存器BX
计数寄存器CX
数据寄存器DX
指针寄存器
SP:当前堆栈段栈顶单元的段内偏移地址,称为堆栈指针
BP:存放现行堆栈段内1个数据区的基址偏移量
变址寄存器
SI:常用于源地址
DI:常用于目标地址
存放地址的偏移量
16位状态标志寄存器:算后结果特征改变标志寄存器(PSW)的状态,供测试,判断,转移指令使用
数据暂存寄存器:暂存参加运算的操作数
控制器:控制中心,通过执行指令来指挥全机工作
执行部件控制电路
内部寄存器(14个):
段寄存器(4个):
代码段CS
只能通过特定的指令改变内容,只能由CPU改变
数据段寄存器DS
堆栈段SS
附加段ES
可通过传送类指令更改
指令指针寄存器(1个):
IP,专用,16位,存放当前执行指令的偏移地址,不能由程序员直接访问,可以由总线接口单元(BIU)修改
状态标志位寄存器(1个):
唯一能按位操作的寄存器,可将运算结果的特殊状态储存起来,实现计算机的判断功能
16位寄存器,9个标志位,7位无用
6个状态标志位
溢出标志位OF:D11
操作数超过机器表示范围称为溢出,此时置1(判断依据:运算结果的最高位进位位和次高位进位位异或值为1)
符号标志位SF:D7
有符号数:最高位符号位,0正1负
无符号数无符号位
零标志位ZF:D6
CPU的算术运算结果为0则置1,反之置0(不包括进位情况)
辅助进位标志位AF:D4
字节加减运算中同CF
奇偶校验标志位PF:D2
低8位偶数个1置位
进位标志位CF:D0
加进减借置1,循环指令置1
STC置位
CLC复位
CMC置位取反
3个控制标志位:
方向标志位DF:D10
控制地址方向,小→大0;大→小1
CLD复位清零;STD置位置1
中断标志位IF:D9
允许外部设备可屏蔽中断请求置1;禁止可屏蔽中断请求置0(对不可屏蔽中断和内部软中断无效)
CLI;STI
陷阱标志位TF:D8
置1则程序一步一停,单步执行,方便编程者逐条检查指令执行结果,用于调试
没有对应指令操作只能通过堆栈操作来改变状态
区别:控制标志的值由系统程序或用户程序根据需要设置;状态标志的值一般由中央处理器执行运算指令并根据运算结果自动设置(X86 CPU也提供了直接设置状态标志位的指令:LAHF,SAHF,PUSHF,POPF)。
通用寄存器(8个):
4个数据寄存器:
AX:
通用数据寄存器
算术逻辑运算
与外设通信:CPU与外设通信时所有数据必须经过累加器
乘法指令中存储被乘数和乘积,除法指令中存储被除数与商
LAHF作目标寄存器,LXAT作累加器
……
BX
通用数据寄存器
间接寻址存放偏移地址
CX
通用数据寄存器
串操作和循环指令中作计数器
DX
通用数据寄存器
乘法运算中存放高16位,除法运算中的被除数或余数
间接寻址中的输入输出指令中作地址寄存器
2个指针寄存器:
BP
通用数据寄存器
基址指针寄存器:表示数据在堆栈段的基地址
间接寻址中存放堆栈段内偏移地址
SP
通用数据寄存器
栈顶指针
2个地址寄存器:
SI
通用数据寄存器
源变址寄存器:间接寻址中存放段内偏移地址
字符串操作中,存放源操作数的数据段内偏移地址
DI
通用数据寄存器
目标变址寄存器:间接寻址中存放数据段或附加段内偏移地址
字符串操作中,存放目标操作数的段内偏移地址
存储器组织结构:
存储器分段管理
原因:20位地址线可寻址1MB物理地址空间,但内部寄存器只有16位,可访问64KB存储空间,所以采取分段管理方法,将内存分为最少16个逻辑段,每一段在一个连续区域内,段与段关系有四种(部分重叠,不连续,连续,完全重叠),每个逻辑段最大不超过64KB,每一逻辑段的起始地址必须能被16整除
在对存储器进行操作时,内存一般分位4个逻辑段,分别是代码段,数据段,堆栈段,附加段
代码段:存放指令程序
数据段:存放当前运行程序的通用数据
堆栈段:存放运算过程中产生的有用信息
附加段:辅助数据区,串操作中作为目标地址
内存的物理地址的形成:物理地址20位,而CPU中所有的寄存器都是16位的所以任何一个存储单元的物理地址都由两部分组成由段基地址和段内偏移地址
物理地址(段基址×16<10H>+偏移地址)
逻辑地址(段基地址和偏移地址):(1100H:1000H)
8086存储器的分体存储
奇偶地址存储体分开存储
低字节放偶地址,高字节放奇地址称为规则存放;反之从奇地址开始存放称为非规则存放
访问哪个存储体由A0和(BHE)决定
系统配置:
最小和最大模式简介
最小模式:单核处理器,分时复用A/D(先锁存地址再读写数据)相应配置:地址锁存器8282/8283,8086/8088CPU,8284A时钟发生器,双向总线驱动器8286/8287
最大模式:多核处理器,一核心多协助
最小模式下的引脚定义(40引脚,双列直插):
AD(0-15)双向输出地址和数据:分时复用传输地址和数据
A(16-19)/S(3-6)单向输出地址或状态
NMI:不可屏蔽中断请求,例如电源掉电等紧急情况,上升沿触发,输入,不受IF影响,不可屏蔽
INTR:可屏蔽中断请求信号线:电平触发或边沿触发,输入,高电平有效
外设提出中断请求,CPU在每个指令周期的最后一个T状态去检测此信号,若置1,则此信号有效,同时去检测IF,若IF=1,允许中断,CPU执行完毕此个指令后响应中断,停止执行指令序列,进入中断周期,读取外设中断类型码,然后在存储器的中断向量表中找到中断服务程序的入口,转入执行中断服务程序。
CLK:系统时钟信号,一般由8284时钟发生器产生,1/3高电平,2/3低电平
RESET:高电平有效,输入,内部寄存器除了CS=0FFFFH,其余都置0
READY:由访问的存储器或I/O接口产生输入到CPU引脚,若为低电平,总线周期在T3后插入若干个Tw周期直到置为高电平,总线周期进入T4状态
(TEST):等待测试信号线,低电平有效,输入
(INTA):中断响应信号线,低电平有效,输出,在中断响应周期发出连续两个负脉冲,第一个通知外设准备中断类型码,外设接口收到第二个负脉冲后将中断类型码放在数据总线上让CPU了解中断详细信息
ALE:地址锁存允许信号线,高电平有效,输出,用作地址锁存器的片选信号,T1状态有效,信号不能浮空
(DEN):最下模式下数据允许信号
DT/(R):数据发送接收信号,控制数据总线的数据方向,
M/(IO):存储器,I/O接口选择信号
(WR):允许写信号
HLDA:总线保持响应信号线
HOLD:总线保持请求信号线,输入信号,其他设备想要占用总线
(RD):读选通信号
MN/(MX):最小最大模式选择信号线
(BHE):高8位数据线是否有效信号线
VCC,GND:电源线和地线
总线操作和时序:
计算机的工作过程:首先人们根据设计任务预先编好的程序放到存储器某些单元中,在计算机运行后,CPU就发出读指令的命令,将程序从存储器读到指令寄存器中,在经过指令译码器分析指令,最后送出一系列控制信号,按照指令规定的操作执行全部操作。(三个阶段:取指令,译码指令,执行指令)
工作周期:
指令周期:总线周期:时钟周期
读周期
写周期
有中断和等待的周期
系统的复位和启动:复位信号至少保持4个时钟周期以上的高电平,若是初次加电引起的复位则高电平维持50μs以上。复位状态表见寄存器介绍处
存储器
存储器基本知识:
存储器概述:存储器是计算机重要的组成部分,是计算机的记忆部分,用于存取计算机的程序指令,加工和处理数据,运算结果及需要计算机保存和使用的重要信息的地方
存储器组成:
记忆存储体
N个存储单元
8个存储基元:能够存储一位二进制信息的最小物理载体,具有两种相反的状态,存储器的存取速度取决于这种物理状态改变速度
外围电路(存储控制器)
存储器性能:
存储容量:存储器能够记忆信息的总量,常用k作为单位,1k=1024个存储单元。(存储容量越大,计算机的解题能力越强使用越方便)
存取速度:存储器存入和取出信息所需时间。(存储器存取速度越快,计算机操作速度越快)
存储器分类:
按材料
半导体:U盘存储器,……
半导体存储器分类:
按制造工艺:
MOS
TTL
ECL
CCD
按读写功能:
随机读写存储器[RAM]:可读可写
动态
静态
集成:使用广泛
只读存储器[ROM]:只能读
掩膜
可编程
紫外线可擦除可编程
电可擦除可编程
快速可擦除可编程:Flash,闪存
半导体存储器的结构:内存按矩阵型式排列,减少了地址线的数量
半导体存储器的主要性能指标:
容量:芯片数量的确定=系统容量/芯片容量
存取速度
读出:访问:访问时间
写入:存入:存储周期
存储器可靠性:用平均故障间隔时间衡量,MTBF值越大可靠性越高
性价比
其他指标:功耗,集成度等
磁性材料:磁盘存储器,磁带存储器
光学材料:光盘存储器
按用途和使用方式
主存储器:与CPU一起构成主机,设在计算机内部,又称内存,内存一般用半导体存储器构成;优点:存取快,可直接访问;缺点:由于地址线的位数限制,容量有限;用途:存放当前正在使用的或经常使用的程序和数据
辅助存储器:设在计算机外部,又称外存;常用的:软磁,硬磁,盒式磁带,近年来普遍采用光盘存储器,U盘;优点:存储容量大;缺点:存取慢,不能直接访问;主要用途:存放当前不参与运行的程序的文件,以及一些需要永久性保存的,需要使用时成批主存交换的程序数据和文件
按存储信息的易失性
永久性,非易失性存储器
非永久性,易失性存储器
……
存储器与CPU的连接
连接注意问题:
存储器与CPU之间的时序配合
CPU总线负载能力
存储器地址的分配和片选
存储器芯片的扩展
字扩展
位扩展
字位扩展
连接:
连接线:
地址总线:双向
数据总线:单向
控制总线:视具体情况定
三种地址译码法:
线选
全地址译码
部分地址译码
集中常见考法:
求首末地址
求芯片容量
求内存容量
接线图
软件
基础知识:
计算机语言:
机器语言:计算机能识别的语言(01序列),不同顺序组成的01序列代码串称为机器指令,全部机器指令的集合构成计算机的指令系统,被称为机器语言。指令与数据编写成一个相互联系的序列称为程序。
汇编语言:面向机器的语言
高级语言:面向过程或对象的语言
指令系统
指令:指挥计算机进行各项操作的命令 指令系统:指令的集合
指令构成和编码格式:
构成:
操作码:表明指令进行什么操作,完成一种具体功能
操作数:表明操作所涉及的操作数的数值或者表明操作数存放与送往何处,8086指令中最多由两个操作数
源操作数
目标操作数
编码格式:
寻址方式:
操作数寻址方式:
立即数寻址:MOV AX,05H
直接寻址:(1)MOV AX,[3100H]<这里默认数据在DS段相当于这样的语句: MOV AX,DS:[3100H]>; (2)MOV AX,CS[3100H];
寄存器寻址:字长一致,源操作数与目标操作数灵活使用除IP以外的寄存器; MOV AX,BX
寄存器间接寻址:指令中的操作数以寄存器中的内容为存储单元的有效地址,即存储单元的有效地址存放在寄存器中;有四个寄存器可用:BX,BP,SI,DI;使用BX,SI,DI时默认对应DS,使用BP时默认对应SS;允许超越 (1)MOV AX ,[BX](2)MOV AX,[BP](3)MOV AX,DS:[BP]
寄存器相对寻址:(1)MOV AX,[SI+08H](2)MOV AX,08H[SI] (3)MOV AX,[SI]08H
基址变址寻址:[BX/BP+SI/DI];BX默认对应DS,BP默认对应SS
基址变址相对寻址
隐含寻址:
DIV BL→AX÷BL=商AL,余数AH
CBW:将AL中的字节扩展成字
DAA:AL中的数据进行十进制数调整后存在AL中
转移地址寻址方式:
基础知识:程序的执行是由代码段寄存器CS和指令指针IP的内容决定的,正常情况下IP逐次加一指向下一条指令地址。但当程序执行到某些特定位置时需要改变程序的执行顺序,而把它转移到指定的指令地址。这种转移在程序的控制下实现为满足程序转移的不同要求,8086提供了(无条件转移,条件转移,过程调用,循环控制,中断等几类指令)
转移:
按移动距离:
段内转移:
短转移:一个字节以内
近转移:一个字以内
段间转移:
按转移地址的表现形式:
直接转移
间接转移
指令系统
数据传送指令
通用数据传送指令:
MOV
PUSH
POP
XCHG
目的地址传送指令:
LEA
LDS
LES
累加器专用传送指令:
IN
OUT
XLAT
类型转换指令:
CBW
CWD
符号位填充高位
标志传送指令:
LAHF
SAHF
PUSHF
POPF
算术运算指令
加法指令:
ADD
ADC
INC
AAA
DAA
减法指令:
SUB
SBB
DEC
AAS
DAS
NEG:求补,-目标操作数
CMP:操作数不变只影响标志位
乘法指令:单操作数,和AL/AX配合使用送到AX/DX,AX
MUL
IMUL
AAM
除法指令:单操作数,和被除数AL/AX配合使用送到AX/DX,AX,商低余高
DIV
IDIV
AAD
逻辑运算与移位指令
逻辑运算
与AND:用于清零和置位,与自身与清零标志位CF和OF
或OR:用于置位和保持
非NOT
异或XOR:与1异或=取反,与0异或=保持,与自身异或=清零
测试TEST:与CMP类似
移位指令
SHL/SAL
SHR
SAR
循环移位指令:
ROL
ROR
RCL
RCR
串操作指令
字符串传送 MOVS
字符串比较CMPS
字符串扫描SCAS
字符串取出LODS
存入串STOS
控制转移指令:改变程序执行顺序的指令
转移指令
无条件转移:JMP
条件转移:
直接标志条件转移:JC/JZ/JS/JO/JP(标志位置位则转移),JNC相反
间接标志条件转移:
过程调用指令
调用:CALL:段内/段间+直接/间接+调用
返回:RET
段内返回
段间返回
带参返回
循环控制指令
LOOP
LOOPE/LOOPZ
LOOPNE/LOOPNZ
中断指令:
INT n
INTO (n=4省略)
IRET
处理器控制指令
标志操作指令:
CLC:进位标志位置0
STC:进位标志位置1
CMC:进位标志位求反
CLD,STD
CLI,STI
外部同步指令:
ESC
NOP
HLT
WAIT
LOCK
汇编语言程序设计:
类型:
组成:
伪操作指令:
程序设计方法;
软硬件结合
I/O端口
I/O接口基本概念和知识
概念:
编址方式
独立编址
统一编址
数据传送方式
程序控制方式
终端控制方式
应用:
可编程接口芯片
简单接口芯片应用
直接存储器存取DMA
中断系统和可编程中断控制器8259A
可编程并行接口芯片8255A
可编程定时器/计数器8253A
数模、模数转换转换器芯片
串行通信