微机复习.docx
《微机复习.docx》由会员分享,可在线阅读,更多相关《微机复习.docx(17页珍藏版)》请在冰豆网上搜索。
微机复习
1、微型计算机硬件:
微处理器、微机、微机系统。
Cpu是核心,决定性能。
3、计算机中数值数据的表示及编码
(1)进位计数制之间的转换:
111010.11B十六进制3A.CH.
(2)机器数、原码、反码、补码
(3)补码的运算及溢出的判断。
65H-3EH,无溢出,39
(4)定点数和浮点数。
(5)ASCII码和BCD码。
写出-19的原码反码补码
1、8086有16条双向的数据线,20位地址总线,最多可访问1MB存储器。
2、8086的I/O端口寻址:
用地址总线的低16位作为对I/O端口的寻址线,最多可访问65536(64KB)个端口。
3、8086存储器组织:
分段管理
为什么要分段?
如何分段?
(数据可以存放到多个不连续的段中,相邻段之间的最小距离为16各字节)。
堆栈的概念?
先进后出后进先出的原则
1、地址的组成:
段地址、偏移地址(什么是段地址、偏移地址、逻辑地址、物理地址)
如1200H:
1200H则物理地址为13200H
2、8086微处理器功能结构:
8086CPU包括总线接口单元BIU、执行单元EU
BIU负责与M、I/O端口传送数据,取指令
总线接口单元BIU由1个20位地址加法器、4个16位段寄存器、1个16位指令指针IP、指令队列缓冲器和总线控制逻辑电路等组成。
8086的指令队列由6个字节构成。
EU负责指令执行
由算术逻辑运算单元、通用寄存器组、标志寄存器、数据暂存寄存器、EU控制电路构成
、引脚及其功能
例2:
8088CPU上READY信号为下面哪种信号有效?
(C )
A.上升边 B.下降边 C.高电平 D.低电平
例3:
当8086CPU读I/O接口时,信号M/IO和DT/R的状态必须是(A)
A.00 B.01 C.10 D.11
]CPU执行算数运算指令不会影响方向标志
5、8086总线的工作周期
(1).时钟周期(ClockCycle):
执行指令的一系列操作都是在时钟脉冲CLK的统一控制下逐步进行的,一个时钟脉冲时间称为一个时钟周期(ClockCycle)。
时钟周期由计算机的主频决定,是CPU的定时基准,例如,8086的主频为5MHz则1个时钟为200ns。
(2)总线周期:
CPU从存储器或外设存或取一个字节或字所需的时间称为总线周期(BusCycle)。
一个基本的总线周期由四个时钟周期组成,分别称为T1、T2、T3和T4时钟周期,或T状态(State)。
1、指令是CPU能执行的一个基本操作。
2、指令组成:
计算机中指令由操作码和操作数(目的、源操作数)两部分组成。
例:
MOVAX,DATA
3、8088/8086CPU的寻址方式:
寻找和获得操作数、操作数存放地址或指令转移地址的方法。
分数据寻址和指令寻址。
立即寻址方式(Immediateaddressing)
寄存器寻址方式(Registeraddressing)
存储器寻址方式(Memoryaddressing):
直接寻址方式、寄存器间接寻址方式、寄存器相对寻址方式、基址加变址寻址方式、基址变址相对寻址:
如MOV0283H[BX][SI],AX目标数为基址变址相对寻址
二、算术运算指令
加法ADDADCINCDAAAAA
减法SUBSBBDECNEGCMPDASAAS
乘除法指令⑶乘法指令①无符号数乘法指令MUL②符号数乘法IMUL
⑷除法指令①无符号数除法指令DIV②有符号数的除法指令IDIV(即整数除法指令)
三、逻辑运算和移位指令逻辑运算指令
NOT,AND(保留某几位,ASCII码->数字)
TEST(判正负和奇偶),XOR
算术逻辑移位指令
SHL/SAL:
乘2(40H,-64,左移2次则溢出)
SHR:
逻辑右移,无符号数除2
SAR:
算术右移(保留符号位),有符号数除2
循环移位
ROL/ROR
RCL/RCR
如把寄存器的最高位移入CF,并在最低位补0时使用SAL
四、串操作指令
源串:
DSSI目的串:
ESDIDF:
控制处理方向(CLD增加;STD减小)
SI、DI自动修改与重复指令REP配合使用
五、控制转移指令
无条件转移指令JMP类型
段内转移:
只改变偏移地址IP短转移(2字节指令),近转移(3字节指令)
段间转移:
同时改变CS、IP直接转移:
直接给出目的地址
间接转移:
目的地址在R或M中过程调用和返回指令CALLRET
返回地址入栈出栈IP/CSIP
六、控制转移指令条件转移指令段内短转移,跳转距离-128-+127
第3章指令系统和寻址方式
1、如SS=1050H,SP=0008H,AX=1234H,执行PUSHAX后,SS、SP、AX=?
画图说明1234H在内存中的存放情况。
SP=0006H,AX=1234H,SS=1050H(10506H)=34H,(10507H)=12H
2、用单条指令或程序段实现下述功能
(1)将AX高8位取反,低四位置1,其余位不变。
(2)将AL的高四位与低四位互换
(3)将BX、AX内容互换。
答:
(1)XORAX,0FF00H,ORAX,000FH
(2)MOVCL,4RORAL,CL(或ROLAL,CL)(3)XCHGAX,BX
3、
(1)分析程序实现的功能。
(2)程序执行后,AX、BX、CX的值分别是多少?
MOVAX,0MOVBX,1MOVCX,100
L1:
ADDAX,BXINCBXDECCXJNZL1
答:
(1)1到100相加求和
(2)AX=5050、BX=100、CX=0;等差级数求和Sn=n*a1+n(n-1)d/2
4、ORG0100HTABDW9876H
当执行:
MOVAX,TAB后,(AX)=9876H;而执行:
LEAAX,TAB后,(AX)=0100H。
5、.写出至少3种指令,使AX寄存器清零MOVAX,00SUBAX,AXXORAX,AX
ANDAX,00H
1.若STR是字符串的首地址,指出下列程序的功能,并将语句加上注解。
LEABX,STR;取STR的偏移量放到BX中
MOVCX,20;_设置循环次数________
LP:
CMP[BX],‘*’
JNZNEXT;BX所指单元内容不为‘*’,则转移至NEXT
MOV[BX],‘$’;将BX所指单元用‘$’替代
NEXT:
INCBX;BX加1,指向下一个单元
LOOPLP;CX-1不等于0则转移至LP处,继续循环
HLT
答:
程序的功能:
将STR开始的前20个字符中的‘*’用‘$’替代
第4章汇编语言程序设计基本要求
8086汇编语言程序设计掌握汇编语言程序的编写、汇编、连接及运行过程
掌握常用指令、伪指令使用方法DOS功能调用方法
掌握不同结构程序的设计方法了解常用汇编语言应用例子:
数据块的显示、排序、传送、比较、查询。
汇编程序:
指令+伪指令
MASM:
8086系统常用的汇编程序编译:
检查语法错误,生成二进制目标文件
链接:
把一个或多个目标文件、库文件合成一个可执行文件
例:
Z=[(X+Y)*8-X]/16。
其中X、Y为无符号字节数。
DATASEGMENT
XDB?
YDB?
ZDW?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
XORAX,AX
MOVBX,0
MOVAL,X
ADDAL,Y
MOVBL,08
MULBL
MOVBL,X
SUBAX,BX
MOVDL,16
DIVDL
MOVZ,AX
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
3、试编写一程序统计出某一内存单元中‘1’的个数.
DATASEGMENT
XDADW3AD8H
CONTDB?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVCL,0
MOVAX,XDA
LOP:
CMPAX,0
JZEXIT
SHLAX,1
JNCNEXT
INCCL
NEXT:
JMPLOP
EXIT:
MOVCONT,CL
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
三、存储器的扩展
四、存储器片选译码电路
地址总线的低位地址线直接与各存储芯片的地址线连接。
所需低位地址线的数目N与存储芯片容量L的关系:
L=2N。
地址总线余下的高位地址线经译码后,做各存储芯片的片选。
通常M/IO信号也参与片选译码
片选信号可以采用线译码、部分译码和全译码等三种方式(或三种方式的组合)来实现。
第6章输入/输出及中断系统
一、I/O接口的基本功能
I/O接口是建立在CPU与外设之间,使两者动作协调的连接电路。
也就是,在CPU与外设之间建立一个缓冲区,解决CPU与外设之间存在的数据形式、数据的传递方式、以及传递速率上存在的差异。
二、I/O接口传送的信息分类
1、数据信息2、状态信息3、控制信息
三、I/O接口的控制方式
CPU与各种不同的外设进行数据传送,采用不同的控制方式,概括起来有以下几种方式:
程序控制方式、中断方式和DMA方式。
4、中断类型码与中断向量表
中断类型码—8086/8088为每个中断源指定的一个编号(向量号N:
0-255)。
中断向量—中断服务程序的入口地址。
中断向量表—把系统中所有的中断向量按中断类型码从小到大的顺序放到存储器的某一个区域所形成的一个表
每个中断向量占用4个存储单元,8086/8088CPU的中断系统最多能处理256个中断源。
8086/8088CPU以存储器的00000H~003FFH共1024个单元作为中断向量存储表
中断向量的存放首址=N×4
例1、若某中断向量为08H,则该中断的中断服务子程序的入口地址在中断向量表中的物理地址范围为()~()。
例2、中断系统的作用
(1)能实现并行处理、
(2)能实现实时处理、(3)能实现故障处理
例3、中断的响应过程有中断申请、中断响应、中断处理。
可编程接口芯片
一、可编程中断控制器Intel8259A:
1、8259A是可编程中断控制器(管理外部中断)
单片可以直接管理8个硬件中断源,还可级联操作。
CPU对8259A的控制命令分为两类:
一类是初始化控制字(ICW)4个
另一类是操作命令字(OCW)3个
(例:
8086系统就是用8259A来管理外可屏蔽中断;有2个端口地址。
)
3、可编程外围接口芯片8255A
8255A的基本性能
可编程通用并行输入/输出接口电路
通用性强,使用灵活,通过它CPU可直接与外设相连
具有三个相互独立的输入/输出端口
A端口、B端口、C端口
三个端口可联合使用,构成具有握手联络信号的并行接口
端口有多种工作方式可供选择
A口有三种工作方式:
方式0、1、2
B口有二种工作方式:
方式0、方式1
解;
(1)108H,10AH,10CH,10EH;
(2)80H
(3)MOVAL,80HMOVDX,10EHOUTDX,ALMOVAL,01HMOVDX,10AHAA:
OUTDX,ALROLAL,1CALLDELAYJMPAA
四、可编程串行接口芯片8251A
1、8251A是可编程串行通信接口芯片,其主要特点如下:
(1)可用于同步和异步通信。
(2)接收、发送数据分别有各自的缓冲器,可以进行全双工通信。
(3)提供与外部设备特别是调制解调器的联络信号,便于直接和通信线路连接。
(4)每个字符的位数可以是5~8位,可以设定奇或偶校验,也可不设校验。
具有奇偶、溢出、帧错误等检测电路。
检验位的插入、检错及剔除都由芯片自动完成。
(5)异步通信时,停止位可选1位、1.5位或2位,波特率为0~19.2k波特,时钟频率可设为波特率的1、16或64倍。
(6)同步通信时,波特率的范围为0~56k波特。
可设为单同步、双同步或者外同步,同步字符可由用户自行设定。