微机原理期末复习:从8086到接口芯片,一条线串起所有考点

发布时间:2026/9/6 20:40:11
微机原理期末复习:从8086到接口芯片,一条线串起所有考点 简介针对北航《微机原理》课程期末考试这是一份以课程复习大纲为核心整理的PDF资料适合北航本科生及相关专业学生系统复习。内容覆盖微机运算基础、8086/8088微处理器、汇编语言程序设计、可编程接口芯片、输入输出与中断等核心模块具体包括BCD编码、ASCII码、原码/补码/反码与溢出判断8086指令流水线、寄存器组、物理地址计算、堆栈操作与寻址方式伪指令和DOS/BIOS中断调用8253/8255/8259/8250等接口芯片的初始化与控制字设置以及I/O端口编址和程序传送方式等复习要点。资源为单一PDF文件大小4.57MB便于下载后打印或电子阅读。已有318人学习使用能帮助读者快速定位重点、对照课后练习进行专项突破考前查漏补缺非常高效。 期末复习这门课最怕的就是翻开PPT发现前面全忘了后面更看不懂。北航的“微机原理”覆盖面很大从8086内部结构到接口芯片、从汇编指令到存储器译码任何一个环节卡住真题就没法往下做。我手头的这份“北航-微机原理-期末复习.pdf”把考点收得很全但光翻一遍PDF用处不大得把它当成一份“地图”带着问题去找自己的薄弱点。这篇文章我按自己的复习路径来拆哪些是必须背的、哪些是必须理解的、哪些是背了就能拿分的一次说清楚。适合看这篇内容的人正在准备期末考试的本科生、复习时间紧张想抓重点的考研党或者工作中突然要碰X86汇编、接口设计的老工程师。先说结论微机原理期末能不能过关键在于把“地址怎么算”“指令怎么用”“芯片怎么配”这三件事串成一条线。1. 复习前先弄清这门课的骨架1.1 核心知识模块与考核重心北航的微机原理课程整体可以拆成四块第一是8086/8088微处理器的内部结构包含寄存器、标志位、流水线、存储器分段这些底层概念第二是汇编语言指令系统包括寻址方式、各类指令格式和简单程序设计第三是存储器扩展与地址译码Ex用SRAM、EPROM和译码器搭最小系统第四是接口技术重点落在8255、8253、8259这些可编程接口芯片上外加A/D、D/A转换和串行通信。期末试卷的题型也基本固定选择题和填空题考概念细节比如寄存器位数、中断向量表位置、指令执行周期简答题让画时序图或解释某个引脚的作用程序设计题直接从汇编编程和接口初始化里出尤其爱考8253计数初值计算和8255方式字设置。很多同学挂科不是卡在最后的大题而是栽在前面的零碎概念上所以复习时要先构建框架再往里面填细节。1.2 为什么说“先理解总线时序”是复习的突破口学微机原理最容易出现的一种状态是寄存器背得滚瓜烂熟但一到总线时序就发懵。这很正常因为时序图在PPT上只是几条波形看起来比寄存器抽象得多。但反过来讲如果不理解CPU怎么通过地址总线、数据总线和控制总线访问存储器或外设后面的接口芯片初始化就全是死记硬背。我复习时用了大概半天时间把8086的“最小模式读周期”彻底理清之后再去看8255、8253的读写时序完全是降维打击。建议你也先把这几件事搞透ALE信号什么时候有效、地址什么时候出现在AD总线上、READY信号是干什么的、为什么需要等待周期。这些概念在填空题里反复出现还能帮你理解为什么CPU用“地址锁存器数据缓冲器”扩展总线。1.3 资料怎么用别按页数刷按章节回查“北航-微机原理-期末复习.pdf”这类汇总资料优点是考点密集缺点是信息太密连续读很容易走神。我的用法是先快速翻一遍目录心里有个标星顺序然后直接去做往年真题遇到不会的知识点再回到PDF对应章节精读。这种“以题带点”的复习效率比从头到尾啃PDF高很多。尤其高频考点比如物理地址计算、8253计数初值、8255方式控制字每周至少回查两遍直到能默写出来为止。2. 8086核心考点从内部结构到存储器组织2.1 寄存器与标志位背清楚这些选择题就不丢分8086的内部寄存器分为通用寄存器、指针与变址寄存器、段寄存器和指令指针共14个16位寄存器。通用寄存器里AX、BX、CX、DX每个都能再分成高8位和低8位比如AL、AHBX这时还兼任基址寄存器CX在循环指令里自动作为计数器DX在乘除法中用做辅助寄存器这些“兼职”身份是考试爱挖的坑。标志寄存器有9个标志位。其中状态标志6个CF、PF、AF、ZF、SF、OF控制标志3个DF、IF、TF。易错点在于CF和OF的区别CF是针对无符号数运算的进位或借出OF是针对有符号数运算的溢出。复习时可以靠口诀强记“加减看CF、OF无符号看CF有符号看OF”。另外DF决定串操作时DI和SI是自增还是自减串指令前必须要用CLD或STD先设好。2.2 存储分段与物理地址20位地址是怎么来的8086的地址总线是20位能寻址1MB但寄存器只有16位所以必须用“段基址:偏移地址”的方式配合。物理地址段基址×16偏移地址这个×16在二进制里就是左移4位十六进制里就是在段基址后面补一个0。举个例子段基址是2000H偏移地址是1234H物理地址就是2000H×161234H20000H1234H21234H。这里有个高频判断题“段地址和偏移地址都是16位的一一对应后一个物理地址是不是只有一种表示方法”答案是否定的同一个物理地址可以由多组段:偏移组合表示。比如物理地址21234H可以是段基址2123H、偏移0004H也可以是段基址2100H、偏移0234H。很多题会在这里挖坑。2.3 最小模式和最大模式引脚复用与总线保持8086有MN/MX引脚接地是最大模式接高电平是最小模式。最小模式下CPU直接产生全部总线控制信号重点记各引脚功能比如ALE、DEN、DT/R、RD、WR等。最大模式要用总线控制器8288来产生控制信号还会涉及总线仲裁考试时通常会用简答题的形式要求比较两种模式的区别。另外一个必考点是AD0~AD15的分时复用在总线周期的T1时刻这些引脚传地址之后才传数据。所以必须在T1时刻用ALE把地址锁存进锁存器如74LS373否则地址会丢失。这个逻辑你能自己画一遍框图才算真正掌握。3. 汇编语言与程序设计从指令到编程题套路3.1 常用指令与寻址方式速记这一章最怕的就是“认不出来”。期末复习时要把寻址方式分成五类立即数寻址、寄存器寻址、存储器寻址直接、寄存器间接、基址、变址、基址加变址、端口寻址、串操作寻址。考卷经常给一条指令让你判断源操作数和目的操作数的寻址方式比如MOV AX, [BXSI2000H] 这种组合。指令系统不用逐条背但以下几类是高频数据传送类MOV、PUSH/POP、XCHG、XLAT算术运算类ADD/ADC/SUB/SBB、MUL/IMUL、DIV/IDIV、CMP逻辑运算类AND/OR/XOR/NOT/TEST移位类SHL/SHR/SAL/SAR/ROL/ROR/RCL/RCR串操作类MOVSB/MOVSW、CMPS、SCAS、STOS、LODS控制转移类JMP、条件跳转、LOOP、CALL/RET以及IN/OUT端口访问指令。我复习时踩过一个坑MUL是隐式操作数的乘法指令只写一个操作数另一个操作数默认是AL或AX结果存到AX或DX:AX里。而DIV也一样被除数默认是AX或DX:AX。考试时一旦忘了这茬程序题就算全错。建议把这类“隐含操作数”单独抄在一张纸上考前半小时过一遍。3.2 编程题的惯性做法先搭框架再逐句翻译期末程序题通常不要求写完整工程而是让补全代码、计算寄存器结果或者写一段完成特定功能的小程序。很多同学一上来就敲指令结果不是漏了段定义就是忘了设段寄存器。我自己的解题顺序是先把内存模型和段寄存器初始化写出来再写数据或提示信息最后才写逻辑功能段。像下面这个“把字符串中大写转小写”的例子就体现了标准流程; 假设DS、CS已经设置好串以0结尾 LEA SI, STRING AGAIN: MOV AL, [SI] CMP AL, 0 JE DONE CMP AL, A JB NEXT CMP AL, Z JA NEXT ADD AL, 20H ; 大写字母ASCII码 20H 变成小写 MOV [SI], AL NEXT: INC SI JMP AGAIN DONE: RET这段代码里的ADD AL, 20H是核心因为大写字母ASCII码的十六进制比对应小写字母小20H。类似的考点还有数字字符转数值SUB AL, 30H十六进制数字转ASCII大于等于10的加37H。这些“ASCII与数值互转”的技巧几乎年年都考。3.3 子程序设计与参数传递的审题步骤子程序部分重点看三种参数传递方式寄存器传参、存储器传参、堆栈传参。考试题目会规定用哪种方式抄题目要求时容易看走眼。寄存器传参最快但寄存器数量有限堆栈传参比较灵活但要注意先进后出最后一定要把堆栈恢复。写子程序时文档注释要写好因为卷面批改时步骤分是按关键指令给分的比如CALL之前要压栈、RET之后要清栈这些“配套动作”必须写全。4. 存储器扩展与接口芯片不背不行的拿分大头4.1 存储器扩展字扩展还是位扩展先算数据线再算地址线存储器扩展题一般给一片芯片比如SRAM 2114是1K×4位EPROM 2732是4K×8位让你扩展成一个16K×8位的系统或者判断需要几片芯片。解题顺序是先看数据线位数需要几片做位扩展并成8位再看地址线容量需要多少片做字扩展来满足总容量。比如用1K×4位的芯片组成4K×8位单片容量差4倍有位扩展2片有字扩展4片一共8片。地址译码是另一个高频考点。需要用74LS138三八译码器产生片选信号这里一定要分清全译码和部分译码全译码把所有地址线都参与译码每个存储器单元只有唯一地址部分译码有地址线不参与产生地址重叠多个地址指向同一单元。考题会问“哪些地址线参与译码、片内地址线是多少根”这时候需要头脑冷静别把数据线位扩展和地址线字扩展搞混。4.2 8255并行接口方式字和控制字必须会算8255有三个口A、B、C分两组工作A组和C口高4位B组和C口低4位。方式0是基本输入输出方式1是选通输入输出方式2是双向传输但A口才支持方式2。初始化流程只有两条命令先向控制字寄存器写方式控制字再按需设置C口置位/复位字。考试最爱出的就是给出电路连接让你写8255的初始化代码。比如A口方式0输入B口方式0输出控制字就是1001 1000B也就是98H。C口的置位/复位功能也常考置位C口某位的控制字格式是0然后位选择再加0或1比如使C口第3位置1控制字是0 0000 0111B即07H。这个计算题如果失分实在太冤。4.3 8253定时器、8259中断控制器对比速查8253有三个独立的16位计数器工作方式有6种。考试重点是方式0计数结束产生中断、方式1可编程单稳态、方式3方波发生器。计数初值的计算是必考如果输入时钟频率是1MHz要产生10ms的定时计数初值1MHz×10ms10000也就是2710H用16位二进制写入。要注意先写低8位再写高8位N0时代表65536不是0这个细节经常出选择题。8259中断控制器是管理中断优先级的级联时能管理多达64级中断。重点记中断响应过程CPU发INTA8259送上中断类型码CPU据此到中断向量表找到入口地址。中断向量表位于内存最低地址的1KB空间也就是00000H~003FFH每个中断向量占4个字节所以中断类型码×4就得到向量在表中的偏移量。这个关系式背下来计算题基本送分。对于ADC0809和DAC0832考得相对简单但需要掌握启动转换和读取结果的基本流程比如ADC0809通过IN0~IN7选通道地址锁存信号ALE锁存通道地址START启动转换EOC查询转换结束OE读取数据。这部分往往是简答题的素材平时没接触过实验的同学要重点补一下。芯片核心功能必背考点常见陷阱8255并行I/O接口方式控制字、C口按位控制控制字寄存器与C口地址混淆8253可编程定时/计数方式选择、初值计算与写入顺序N0表示65536别写成08259中断优先级管理中断类型码×4定位中断向量忘记ICW1和ICW2的配合5. 实验相关考点别让送分题变成丢分题5.1 实验考试考什么北航微机原理实验课一般包括熟悉MASM/TASM汇编环境做简单输入输出数码管显示8253定时8255控制交通灯或者步进电机还有A/D转换这类综合实验。期末笔试里实验内容一般占10~15分形式主要是填空题和简答题比如“某实验用8255A口作为输入、B口作为输出写出方式控制字”“8253工作方式3写出产生音频信号的初始化步骤”。这部分复习最有效的方法就是重开仿真软件把实验挨个跑一遍。如果没有硬件开发箱用Proteus或DOSBox加MASM也能模拟大部分逻辑。关键是理解每一段实验代码里每条指令的作用特别是端口地址是怎么来的。一般实验系统中的片选信号会用地址译码器生成比如系统给8255分配地址为300H~303H很多人记成300H其实A口、B口、C口、控制口四个地址是递增的全都要记。5.2 实验题的答题套路遇到“简述实验步骤”这类简答题别写流水账按“硬件连接-初始化-主循环-结果观察”四步来答。先写芯片与CPU的连线要点比如CS片选接到哪个译码输出再写初始化代码或状态字然后写主程序的执行逻辑强调循环读取或中断方式最后写观察到的现象。这样答既覆盖得分点又显得逻辑清楚。实验相关的小知识点里我最容易被问住的是“数码管动态扫描原理”要点在于几个数码管共用段选线通过位选逐一点亮刷新频率要高于人眼视觉暂留约50Hz以上否则会闪烁。6. 常见失分点与避坑清单下面是复习时最容易踩的坑我按频率从高到低列出来考前至少过一遍失分点典型错误对策物理地址计算段基址×16算成左移8位十六进制乘十六进制先转十进制再验证8253初值设置十进制与十六进制混算先算计数次数再用十六进制表示注意高/低字节写入顺序8255控制字方式控制字与C口按位字弄混记住最高位为1是方式字为0是C口置位/复位中断向量表忘记每个中断向量占4字节中断类型码n对应表地址偏移4n表位置在内存最低1KB标志位含义CF与OF混用无符号数进位/借位用CF有符号数溢出用OF寻址方式判断分不清基址与变址记住BX和BP是基址寄存器SI和DI是变址寄存器最小/最大模式引脚功能张冠李戴最小模式记CPU直接出控制信号最大模式记8288另外想说一个通用的复习策略不要死记硬背数据手册式的表格而是给自己讲一遍“为什么”。比如8255的方式控制字最高位为1是想利用同一个端口地址去区分两种命令8259中断类型码×4对应向量表是为了在1KB表内装下256个中断8086地址线20位而寄存器16位所以用分段来解决。把这些“为什么”想通之后前面列的那些考点根本不用背考试时自然能推出来。复习节奏上我的安排是考前两周先把这份PDF快速通读一遍标记陌生概念第二周集中刷真题把错题对应到PDF章节精读考前两三天进入“背诵模式”只看速记表和推导过程。最后考前夜再把自己易错的几个计算题手写一遍比背概念有用得多。我个人最大的体会是这门课像拼积木8086是底座汇编是插件接口芯片是外围组件分开学都很抽象一旦拼起来运行反而清晰了。你在复习时如果卡在某个概念上别急着越过先把它的“输入-处理-输出”画出来往往画完就通了。本文还有配套的精品资源点击获取