总结对于个人的成长而言,是我们反思自身、了解自身、明确目标的重要方式,通过编写的总结报告,我们可以在工作回顾中,寻找出自身的工作难点,掌握自身的工作优势,更加明确自身的发展方向。今天小编给大家找来了《微机原理指令小结》,希望对大家有所帮助。
微机原理指令小结
8086CPU指令小结
所有指令:
(1)立即数不能作为目的操作数。
(2)不能在2个存储单元之间直接进行操作(串操作除外)。
(3)MOV指令和堆栈指令是惟一能对段寄存器进行操作的指令。 (4)源和目的操作数的数据类型必须匹配,都是8位,或都是16位。 (5) CS 、IP不能直接作为操作数。 (6)指令中至少要有一项明确说明传送的是字节还是字,如果没有,可通过PTR进行设置。
一、传送指令
(1)6种指令:通用传送指令、堆栈操作指令、交换操作指令、I/O操作指令、目的地址传送指令和标志传送指令。
(2)对标志位的影响:除标志传送(SAHF、POPF)外,均不影响标志位。 (3)操作数表示方法:立即数——data,存储器单元地址——mem,
寄存器——reg, 段寄存器——segreg。
1. 通用传送指令:完成数据传送
(1)指令格式:MOV OPRD1,OPRD2 ;[目的操作数OPRD1]← [源操作数OPRD2] (2)源OPRD2: data、mem、reg、segreg。 (3)目的OPRD1: mem、reg、segreg。
(4)通用传送指令MOV和堆栈指令是唯一允许以段寄存器(代码段寄存器CS和指令指针IP除外,即CS 、IP不能作为直接操作数)作为操作数的指令,不允许通过MOV指令直接以立即数方式给段寄存器赋值,不允许直接在两个段寄存器之间直接进行传送。
(5)8位/16位操作。
2. 堆栈操作指令:将数据压入/弹出堆栈 (1)指令格式:
入栈:PUSH OPRD;先修改堆栈指针SP-2,然后将数据压入堆栈。
;SP =SP-1,[SP]=操作数高8位; SP =SP-1,[SP]= 操作数低8位。 出栈:POP OPRD; 先将数据弹出堆栈,然后修改堆栈指针SP+2。
;(操作数低8位)←[SP],SP =SP+1;(操作数高8位)←[SP],SP =SP+1。 (2)操作数:mem、reg、segreg。操作数不能是立即数data。 (3)仅能进行字运算(16位操作)。
(4)堆栈存取原则为后进先出,只有一个入/出口SS:SP, SP始终指向栈顶,SP是自动修改的,SP在初始化中需要设置。
(5)PUSH、POP指令必须成对使用。
3. 交换操作指令:XCHG——数据交换;XLAT——完成一个字节的换码转换 (1)指令格式:
交换操作指令: XCHG OPRD1,OPRD2;[OPRD1]←→ [OPRD2] 累加器换码指令(表转换指令、查表指令):XLAT;(AL)← ((DS)×16+(BX)+(AL)) (2)XCHG:段寄存器和立即数不能作为一个操作数,8位/16位操作。
(3)XLAT:表首地址在BX中,AL的内容作为某一项到表首的偏移量(256字节的 1 表的下标),转换后的结果存放在AL中。
4. I/O操作指令:累加器(AX/AL)与I/O端口之间的数据传送 (1)指令格式:
输入指令:IN AL/ AX,PORT;(AL/ AX)← [PORT]
IN AL/ AX,DX
;(AL/ AX)← [DX]
输出指令:OUT PORT,AL/ AX ;[PORT]←(AL/ AX)
OUT DX ,AL/ AX
;[DX]←(AL/ AX)
(2)当端口地址≤ 255时,使用PORT(8位端口直接地址);当端口地址≥255时,必须用DX( 16位端口直接地址)作桥梁。DX作端口寻址最多可寻找64K个端口。
(3)PORT为直接寻址,8位/16位操作。 5. 目的地址传送指令
(1)取有效地址指令:LEA OPRD1,OPRD2
或: LEA reg,[add] ;( reg)← add, add为有效地址
把存储器的有效地址EA(源操作数的地址偏移量)送入一个寄存器reg;常用于将一个16位的通用寄存器作为地址指针。传送的是有效地址EA。 (2)将双地址指针装入DS和另一个寄存器指令LDS指令:
LDS OPRD1,OPRD2
或: LDS
reg,[add] ;(reg)← (add+1)(add), (DS)←(add+3)(add +2) (3)将双地址指针装入ES和另一个寄存器指令LES指令:
LES OPRD1,OPRD2
或: LES
reg,[add] ;(reg)←(add+1)(add), (ES)←(add+3)(add +2)
① 从源操作数指定的存储单元中取出4字节的地址指针(包括2字节的段地址和2字节的偏移量)传送到DS/ES和reg。指定将段地址送入DS/ES,偏移量部分送入一个16位的指针寄存器或变址寄存器。
② 源操作数mem,目的操作数必须是一个16位的通用寄存器。 ③ 传送的是存储单元的内容,而不是存储器的有效地址EA。 6. 标志传送指令
(1)读标志指令:LAHF; (AH)← (FR)0~7
功能:将标志寄存器中的SF、ZF、AF、PF和CF(即低8位)传送至AH寄存器的指定位,空位没有定义。
(2)存标志指令:SAHF; (FR)0~7 ←(AH)
功能:将寄存器AH的指定位,送至标志寄存器的SF、ZF、AF、PF和CF位(即低8位)。根据AH的内容,影响上述标志位,对OF、DF、 IF和TF无影响。
(3)标志入栈指令:PUSHF;将FR入栈。(SP)←(SP)-2,((SP)+1,(SP))←(FR) 功能:将标志寄存器FR压入堆栈顶部,同时修改堆栈指针,不影响标志位。 (4)标志弹出栈指令:POPF;将栈顶的内容弹出到FR中。
;(FR)←((SP)+1,(SP)), (SP)← (SP)+ 2
功能:堆栈顶部的一个字,传送到标志寄存器FR,同时修改堆栈指针,影响标志位。
二、算术运算指令
(1)9种指令:加法指令、减法指令、增量//减量指令、求补指令、比较指令、乘法指令、除法指令、字节字/转换为字扩展指令和十进制调整指令。
(2)对标志位的影响:
2 ① 加、减、比较指令(CMP)、取补指令(NEG)指令均影响6个标志位CF、OF、PF、SF、ZF和AF。
② 乘法指令影响CF和OF标志;除法指令所有标志位都不确定,无意义。
③ 增量//减量指令影响除进位标志CF以外的5个标志位AF、OF、PF、SF和ZF。 ④ 字节字/转换为字扩展指令不影响标志位。
⑤ 加法的ASCII调整指令AAA,十进制调整指令 DAA影响除溢出标志OF以外5个标志: CF、PF、SF、ZF和AF;OF没有意义。
⑥ 减法的ASCII调整指令 AAS、十进制调整指令 DAS影响 2个标志:CF和AF;其余标志没有意义。
⑦ 乘法的ASCII调整指令AAM 、除法的ASCII调整指令AAD 根据AL寄存器的结果影响SF、ZF和PF。
1.加法指令 (Addition):完成加法操作。 (1)格式:ADD/ ADC
OPRD1,OPRD2 ;(OPRD1)←(OPRD1)+(OPRD2) (2)源: data、mem、reg;目的:reg,mem。 (3)ADC指令主要用于多字节运算中。 (4)8位/16位操作。
2.减法指令(Subtraction) :完成减法操作。 (1)格式:SUB/ SBB OPRD1,OPRD2;(OPRD1)←(OPRD1)-(OPRD2) (2)规定同加法指令。
3. 增量(加1 )/减量(减1 )指令INC/ DEC:完成+1/-1操作。 (1)格式:INC/ DEC OPRD; (OPRD)←(OPRD)±1
(2)功能:主要用于在循环程序中修改地址指针和循环次数等。 (3)操作数:reg、mem。
4. 求补指令NEG:完成补码操作。 (1)格式:NEG OPRD (2)操作数:reg、:mem。
5. 比较指令CMP:完成减法操作,结果不回送,反映在标志位上。 (1)格式:CMP OPRD1,OPRD2; (OPRD1)-(OPRD2)
(2)功能:主要用于比较两个数之间的关系。在比较指令之后,根据标志即可判断两者之间的关系。减法操作,结果不回送目的操作数。
(3)两数关系的判断标志 ① A=B 用 ZF=1 判断;
② 两个无符号数的大小用CF判断。CF=1,AB。
③ 两个符号数的大小用SF⊕OF判断。SF⊕OF=1,AB。
JG/JNLE(大于, SF⊕OF=0且 ZF=0 ) JL/JNGE (小于, SF⊕OF=1且 ZF=0 ) 6. 乘法指令MUL/ IMUL:完成无符号乘法/带符号(整数)乘法操作。 (1)格式:MUL/ IMUL OPRD ;8位:(AX) ← (AL)╳( OPRD )
;16位:(DX) (AX) ← (AX)╳( OPRD )
(2)源操作数:reg、mem,由指令给出。 (3)目的操作数:默认在AL/AX中。
(4)带符号数乘法指令IMUL当结果的高半部分不是结果的低半部分的符号扩展时,标志位CF和OF将置位。
(6)可完成字节与字节乘法、字与字乘法操作。
3 7. 除法指令DIV/ IDIV:完成无符号除法/带符号(整数)除法操作。
(1)格式:DIV/ IDIV OPRD; 8位:(AL) ← (AX)/( OPRD ) ……(AH) (余数)
;16位:(AX) ← (DX) (AX)/( OPRD) ……( DX )(余数) (2)源/目的操作数规定同乘法指令。
(3)对于符号数,当被除数不够位数时,需要对高8/16位进行扩展符号扩展。
8. 字节字/转换为字扩展指令CBW/CWD:将AL/AX寄存器的最高位扩展到AH/DX。 (1)格式:CBW/CWD (2)功能:将AL/AX寄存器的最高位扩展到AH/DX, AL.7(AX.15)=0,则AH(DX)=0;AL.7(AX.15)= 1,则AH=0FFH(DX=0FFFFH)。
9. 十进制调整指令
(1)压缩BCD码:每个字节表示两位BCD数;
非压缩BCD码:用一个字节表示一位BCD数,在这字节的高四位用0填充。
(2)每条十进制调整指令在使用时都与相应的算术运算指令配合,并自动对相应的算术运算指令结果进行相应的十进制调整。
(3)格式:
① DAA:压缩的BCD码加法调整
② DAS:压缩的BCD码减法调整 ③ AAA:非压缩的BCD码加法调整 ④ AAS:非压缩的BCD码减法调整 ⑤ AAM:乘法后的BCD码调整
⑥ AAD:除法前的BCD码调整
三、逻辑运算和移位指令
1. 逻辑运算指令
(1)5种指令:逻辑与、或、非、异或和测试指令。 (2)指令格式
① 逻辑与指令AND OPRD1,OPRD2; (OPRD1)←(OPRD1)∧(OPRD2)
② 逻辑或指令OR OPRD1,OPRD2;
(OPRD1)←(OPRD1)∨(OPRD2 )
③ 逻辑非指令 NOT OPRD;
(OPRD)← (/OPRD) ④ 逻辑异或指令XOR OPRD1,OPRD2;(OPRD1)←(OPRD1)⊕(OPRD2) ⑤ 测试指令TEST OPRD1,OPRD2 ;
(OPRD1)∧( OPRD2 ) ,结果不回送。 (3)操作数范围
源操作数为reg 、mem、data;目的操作数为reg 、mem(NOT指令只有一个操作数)。单操作数指令NOT的操作数不能为立即数。双操作数逻辑指令中,必须有一个操作数为寄存器寻址方式,且目的操作数不能为立即数。
(4)功能:实现相应的逻辑功能。
① 与指令可实现屏蔽(复位)数据的某些位(使一个字或字节中的某些位清0,而其余位不变),提取某些位或拆字。
② 或指令可实现置位数据的某些位(使一个字或字节中的某些位置1,而其余位不变),拼字。
③ 非指令常用于使某个数取反,或取反后+1而得补码。
④ 异或指令可实现某个寄存器清0,或使目的操作数的某些位取反(使一个字或字节中的某些位取反,而其余位不变)。
⑤ 测试指令通常用于测试。目的操作数的某些位是1还是0,用ZF标志判断。
4 (5)对标志位的影响
① 逻辑与、或、异或和测试指令影响ZF,PF,SF标志;CF=0,OF=0;AF无意义。 ② 逻辑非指令不影响标志位。 2. 移位指令
(1)4组8种指令:算术移位SA,逻辑移位SH,循环移位RO,带进位位的循环移位RC。右移R,左移L。
(2)指令格式:操作码 OPRD,M M =1时,只移1位; M>1时,可将指令格式中的CNT改为CL寄存器,并在移位指令前将移位次数预先送入CL寄存器中。
(3)功能:将OPRD的内容移位M次。算术移位适用于带符号数的×2,÷2。逻辑移位适用于无符号数的×2,÷2。
(4)操作数范围: reg、mem。
(5)对标志位的影响:
① 算术/逻辑移位指令影响CF、SF、ZF、PF标志,在移1位时,影响OF标志。不影响AF标志。
② 循环移位指令只影响CF、 OF标志,不影响其他标志位。
CF MSB LSB 0 SHL/SAL算术/逻辑左移 CF 0 CF MSB LSB SHR逻辑右移 MSB LSB SAR算术右移
CF MSB LSB ROL循环左移 CF MSB LSB ROR循环右移 CF MSB LSB RCL通过进位的循环左移 CF MSB LSB RCR通过进位的循环右移
四、串操作类指令
(1)5种指令:串传送MOVS,串比较CMPS,串搜索SCAS,存串STOS,取串LODS。 (2)指令格式:操作码
DST,SRC MOVSB(字节)/MOVSW(字)
① 串传送MOVS DST,SRC;[(ES:DST)]←[(DS:SRC )]
MOVSB;
[(ES:DI)]←[(DS:SI)],SI=SI±1,DI=DI±1
MOVSW;
[(ES:DI)]←[(DS:SI)],[(ES:DI+1)]←[(DS:SI+1)],SI=SI±2,DI=DI±2
② 串比较CMPS DST,SRC;
[(ES:DI)]-[(DS:SI)];SI=SI±1,DI=DI±1
5 ③ 串搜索SCAS DST;
AL← [(ES:DI)]];DI=DI±1 ④ 存串STOS DST;
[(ES:DI)] ← AL;DI=DI±1 ⑤ 取串LODS SRC;
AL ←[(DS:SI)];SI=SI±1 字操作与字节操作类似,AL——AX。 (3)功能
根据方向标志DF及所传送数据的类型(字节/字)对SI及DI进行修改,在指令重复前缀REP的控制下实现。
① 串传送:把数据段中由SI间接寻址的一个字节/字传送到附加段中由DI间接寻址的一个字节/字单元中。
② 串比较:把数据段中由SI间接寻址的一个字节/字与附加段中由DI间接寻址的一个字节/字进行比较操作,使比较的结果影响标志位。可在两个数据串中寻找第一个不相等的字节/字,或者第一个相等的字节/字。
③ 串搜索:用指令指定的关键字节/字(分别存放在AL/AX中),与附加段中由DI间接寻址的字节串中的一个字节进行比较操作,使比较的结果影响标志位。可在指定的数据串中搜索第一个与关键字节匹配(或者不匹配)的字节。
④ 存串:把指令中指定的字节(或字)串(存放在AL/AX中) 传送到附加段中由DI间接寻址的字节内存单元中。可连续将AL(或AX)的内容存入到附加段中的一段内存区域中去,该指令不影标志位。
⑤ 取串:从串中取指令实现从指定的字节(或字)串中读出信息的操作。 (4)规定
① 串操作类指令是唯一的一组源和目的操作数均在存储单元的指令。 源串在数据段,目的串在附加段。各指令所使用的默认寄存器是:源串地址DS:SI;目的串地址ES:DI;字串长度CX;存取或搜索的默认值
AL
② 串操作时,地址的修改由方向标志确定。
CLD;DF=0,SI/DI地址作自动增量(自动+1)修改; STD;DF=1,SI/DI地址作自动减量(自动-1)修改。
③ 任何一个串操作指令均可在指令前面加上一个重复操作作为前缀,于是就重复执行,直至CX、ZF满足要求为止。
④ 重复指令前缀
REP;①若(CX)=0,则退出; ② CX=CX-1;③执行后续指令;④重复①----③
REPE/REPZ;①若(CX)=0或ZF=0,则退出;②CX=CX-1;③执行后续指令;④重复①----③ REPNE/REPNZ;①若(CX)=0或ZF=1,则退出;②CX=CX-1;③执行后续指令;④重复①----③
五、控制转移类指令——改变指令执行顺序的指令
(1)6种指令:无条件转移指令、子程序调用和返回指令、条件转移指令、循环控制指令、中断指令、处理器控制命令。
(2)概念
①直接转移:转移的目的地址(标号)直接出现在指令码中。
②间接转移:转移的目的地址间接存储于某一个寄存器或某一个内存变量中。
③段内转移/调用:转移的目的地址和本条指令在同一代码段中,转移时只改变IP,不改变CS。程序转向的有效地址EA等于当前IP的内容加上8/16位位移量。可分为:
段内近转移NEAR ——16位位移量,适用于无条件转移指令和条件转移指令,转移范围为-32768 ---- +32768。
段内短转移SHORT ——8位位移量,适用于条件转移指令,转移范围为-128 ---- +127 。
6 ④段间转移/调用(远转移FAR):转移的目的地址和本条指令不在同一代码段中,转移时同时改变CS和IP内容,即程序转移到另一个代码段。
1. 无条件转移指令
JMP [转移方式]OPRD;转移到OPRD所指向的存储器单元处执行程序 (1)段内直接短转移指令JMP SHORT OPRD;(IP)← (IP)+ OPRD
(2)段内直接近转移指令JMP
NEAR PTR
OPRD;(IP)← (IP)+ OPRD (3)段内间接转移指令JMP WORD PTR
OPRD;(IP)← [EA] (4)段间直接(远)转移指令JMP FAR PTR OPRD;(IP)←OPRD的段内偏移地址,(CS)←OPRD所在的段地址。OPRD为直接寻址方式。
(5)段间间接转移指令JMP DWORD PTR OPRD;(IP)← [EA],(CS)← [EA+2] 2. 条件转移指令
指令助记符
目的地址
(1)标志条件转移指令助记符:J/JN+标志(C, P, S, S, O);
(2)比较条件转移指令助记符:J/JN+比较符(A高于, B低于, E等于, G大于, L小于) (3)无符号数比较:测试标志位为CF、ZF,分高于A、等于E、低于B等3种情况:ZF=1,等于;CF=0,大于。
(4)符号数比较:测试标志位为ZF、OF和SF,分大于G、等于E、小于L等3种情况:ZF=1,等于;SF⊕OF =0,大于。
3. 子程序调用和返回指令 (1)子程序(过程)调用指令
CALL 子程序名 DST ①段内调用: CALL NEAR PTR OPRD ;(SP)←(SP)-2,((SP)-2)((SP)-1) ← (IP),
(IP)←子程序DST的地址( 即:IP+16位位移)
②段间调用:CALL FAR PTR OPRD ;(SP)←(SP)-2 ,((SP)-2)((SP)-1)= ( CS ),
(SP)←(SP)-2 ,((SP)-2)((SP)-1)=( IP ),
(IP)=[EA],(CS)=[EA+2] (2)子程序返回指令
RET;段内返回( IP ) ← ((SP) +1 ,SP),( SP ) ←
( SP) + 2
;段间返回( IP ) ← ((SP) +1 ,SP),( SP ) ←
( SP) + 2
( CS ) ← ((SP) +1 ,SP),( SP ) ←
( SP) + 2 4. 循环控制指令
对CX或标志位ZF进行测试,确定是否循环。 (1)LOOP OPRD(短标号);(CX)← (CX)-1,若CX≠ 0,则循环,否则顺序执行。
(2)LOOPNZ/LOOPNE OPRD;(CX)←(CX)-1,若CX≠0和ZF=0,则循环,否则顺序执行。 (3) LOOPZ/LOOPE OPRD;(CX)←(CX)-1 ,若CX≠0 和ZF=1,则循环,否则顺序执行。 (4)JCXZ OPRD; (CX)← (CX)-1 ,若CX=0,则循环,否则顺序执行。 5. 中断指令 (1)INT n;(SP)←(SP)-2,((SP)-2 )((SP)-1 )←(FR), FR入栈
;(SP)←(SP)-2 ,((SP)-2 )((SP)-1 )←(CS), CS入栈 ;(SP)←(SP)-2 ,((SP)-2) ((SP)-1 )←(IP), IP入栈 ;(IP)←(n×4), (CS)←(n×4+2),n——中断类型号
(2)INTO;同INT 4,算术运算溢出中断指令
(3)中断返回指令IRET;(IP) ← ((SP)+1 ,(SP)), (SP) ← (SP)+2, IP出栈
;(CS)← ((SP)+1 ,(SP)), (SP) ← (SP)+2, CS出栈
;(FR)← ((SP)+1 ,(SP)), (SP) ← (SP)+2, FR出栈
6. 处理器控制命令 (1)标志操作指令
清标志位为CL,置标志位为ST。只对CF、DF和IF三个标志操作 CLC——清进位标志,CLD——清方向标志,CLI——关中断标志; STC——置进位标志, STD——置方向标志,STI——开中断标志; CMC——进位标志取反。 (2)处理器外部同步命令
对标志位的影响:不影响标志位 。
①暂停指令:HLT;处理器处于什么也不做的暂停状态,可由中断请求、复位等唤醒继续执行。 ②等待指令:WAIT;处理器处于等待状态,CPU每隔4个时钟周期测试一次TEST引脚线(23脚),直至TEST引脚线为有效低电平时,CPU才脱离等待状态。 ③交权指令:ESC;CPU将控制权交给其他协处理器,使协处理器从系统指令流中取得指令。
④总线封锁指令:LOCK;可放在任一条指令前作为前缀,使CPU在执行下一条指令期间发出总线封锁信号(LOCK),将总线封锁,其它的主设备不能控制总线。
⑤空操作指令:NOP;不完成任何操作,只耗费3个时钟周期,用于程序的延时和调试。
各章知识要点、小结
第一章 微型计算机系统概述
本章知识要点:
微型计算机的发展。 微型计算机的特点。 微型计算机系统的组成。 微型计算机的主要性能指标。
本章小结:本章首先介绍了微型计算机的发展、组成。然后对计算机的结构进行了简单介绍,并介绍了微型计算机的3种不同的总线结构。最后,介绍了计算机的软、硬件的概念,区别和联系以及计算机的主要性能指标。
在学习完本章内容之后,需要掌握如下内容。 微型计算机的发展阶段和特点。
微型计算机属于第四代计算机,为冯〃诺伊曼结构。
微型计算机系统由硬件和软件组成。硬件由输入设备、输出设备、运算器、存储器和控制器等5部分组成。
微型计算机中的软硬件概念、分类、联系以及区别。
微型计算机的主要性能指标有字长、存储器容量、运算速度、外部设备配置、系统软件配置、性价比等。
1KB=1024B
1MB=1024KB
1GB=1024MB 第二章 计算机中的信息表示
本章知识要点:
进位计数制及其相互转换。 二进制数的运算规则。
计算机中带符号数与小数点的表示方法。 计算机中的常用码制。 本章小结:
本章着重介绍了计算机中数据的表示方法,重点讲述了
二、
八、
十、十六进制数的相关概念及各类进制数之间相互转换的方法,无符号数和带符号数的机器内部表示以及字符编码和汉字编码等内容。
在学习完本章内容之后,需要掌握如下内容。 掌握计算机内部的信息处理方法和特点。
熟悉原码、反码、补码等各类数制之间的相互转换。 理解无符号数和带符号数的表示方法。
掌握各种BCD码的特点及其之间的相互转换。 了解循环码和余3码的表示方法。
1/7 掌握在计算机中如何运用字符的ASCII码表示非数字信息的。 了解汉字编码以及在计算机中对汉字的表示方法。
第三章 微处理器
本章知识要点:
CPU的发展过程。
80486的内部基本结构。 80486的外部基本引脚。 CPU的内部寄存器。 CPU的流水线操作过程。
Pentium CPU的简介和CPU的发展趋势。 本章小结:
本章首先简单介绍了CPU的发展历史,然后以80486为例着重讲解了32位CPU的内部结构和外部引脚。同时介绍了CPU的3种工作方式。对80486的内部寄存器,本章进行了较为详细的讲述。接着介绍了CPU时序的概念和CPU采用的指令流水线技术。在本章的最后,介绍了Pentium CPU的发展和它所采用的新技术,并对CPU的未来发展趋势做了一个展望。
在学习完本章内容之后,需要掌握如下内容。 CPU的发展阶段和特点。
80486内部的8个部件以及它们的功能。
80486外部的每个引脚的定义及它们可以实现的功能。 CPU的3种工作方式和为什么要采用不同工作方式。 CPU内部9组寄存器,每个寄存器的功能。
时序的定义,能够区分3种周期,即指令周期、总线周期和时钟周期。 CPU的指令流水线操作和它的5个步骤。 对CPU的最新发展要有所了解。
第四章 指令系统
本章知识要点:
80x86指令的基本格式。 80x86常见的寻址方式。 80x86的指令系统。 本章小结:
指令系统是表征一台计算机性能的重要因素,它决定了计算机的基本功能。指令系统的格式和功能不仅直接影响到机器的硬件结构,而且也直接影响到系统软件和机器的适用范围。因此,学习指令系统不仅是学习汇编语言的重要内容而且也是理解机器基本功能以及进行接口程序设计的重要基础。
本章全面系统地介绍了80x86指令系统的寻址方式、指令格式和各类指令的功能及应2/7 用。该指令系统的特点是:指令格式灵活,采用可变长度指令格式,指令长度可在1~6个字节之间变化;寻址能力强,对操作数的寻址有7种不同的寻址方式,这不仅为程序设计提供方便而且有利于提高程序运行效率;具有处理多种数据类型的能力,可以对8位/16位数,带符号数和不带符号数,压缩的和非压缩的BCD码十进制数进行处理;还提供了字符串操作指令;为支持构成多处理器系统,还专门提供了一组指令(WAIT、ESC)。
通过本章学习,要求重点掌握以下内容。
理解指令、指令系统、寻址方式及有效地址EA、物理地址PA、逻辑地址、位移量等基本概念。
了解80x86指令的基本格式,包括指令的机器码表示和各种指令的汇编格式,并区分二者的异同。
熟悉80x86指令系统按功能分类及各类指令的持点和常用指令的基本使用方法。重点是数据传送指令、逻辑运算指令和条件转移指令的用法。
熟悉那些与CPU引脚信号有关的指令及其使用方法,如IN、OUT、LOCK、WAIT、ESC指令。
熟悉各种寻址方式的含义及指令的汇编格式,了解常用指令(如ADD、SUB、DIV、IMUL、逻辑指令、移位指今、条件转移指令等)执行后对标志位产生的影响以及根据状态标志位的设置,正确且灵活地运用条件转移指令和循环控制指令,因为这对程序设计特别是对编制实时控制程序具有重要作用。
第五章 汇编语言程序设计
本章知识要点:
汇编语言基本知识。 分支程序设计。 顺序程序设计。 循环程序设计。 子程序设计。
本章小结:在汇编语言的学习中,程序设计对于一个初学者来说是一个倍感棘手的问题。当学习了相关的原理知识及指令系统后,就希望能运用学到的知识解决实际的问题。这就需要通过程序设计来完成。
学习程序设计应从基本知识和基本方法入手,逐步深入。本章中讲述了伪指令,汇编语言源程序格式,汇编语言程序设计基本方法,程序设计举例等内容。使大家能掌握程序设计的方法,提高对汇编语言的运用能力,并掌握相关的一些重要算法,为将来灵活地运用汇编语言解决更实用、更复杂的问题做好必要的准备。
本章要求掌握的内容如下。 熟记汇编语句的一般格式。 掌握伪指令的用法。
会运用顺序程序设计、分支程序设计、循环程序设计和子程序设计等方法进行简单的汇编程序的设计。
3/7 理解DOS系统功能调用的过程,并能运用简单的DOS功能调用对计算机设备进行操作。
第六章 存储器
本章知识要点:
存储器的分类,半导体存储器的性能指标。 内存储器的工作原理和地址译码。
存储器的组成方式和存储器的3级结构。 存储器的读周期和写周期对时序的要求。 内存储器的分段管理。 内存储器的分页管理。 本章小结:
本章首先介绍了存储器的概念及其分类,介绍了内存、硬盘存储器和光盘存储器。又介绍了采用32位CPU的微型计算机系统的内存结构和典型的内存设计模式,这部分的内容较难理解,不要求掌握,只要对此有所了解就可以了。半导体存储器的性能指标是选择存储器的主要依据,所以介绍了几个选择存储器需要注意的问题。接着是有关内存储器的工作原理和地址译码的内容,其中包括静态存储器和动态存储器的工作原理,单译码结构和双译码结构。然后是微型计算机存储器的组成和存储器的多级结构以及有关存储器的工作时序。最后是本章的重点内容,分段管理和分页管理,介绍了分段管理和分页管理的基本思想、工作过程及段间保护和页间保护的实现方法。
学习完本章之后,应达到以下要求。 知道存储器的概念及其分类。
了解CPU的内存结构和内存设计模式,掌握半导体存储器的性能指标。 了解内存储器的工作原理和存储器的地址译码。
掌握存储器在微型计算机中的组成和存储器的多级结构。 了解存储器读写的工作时序。
理解分段管理和分页管理的基本思想。
理解分段管理和分页管理的过程和线性地址转换成物理地址的过程。
第七章 微型计算机的输入/输出及DMA 本章知识要点:
采用I/O接口的必要性,I/O接口传送的信息。 I/O接口的基本功能和基本组成部件。 I/O端口地址及编址方式。 CPU与外设的输入输出方式。
DMA传送方式及DMA控制器8237A。 本章小结:
微型计算机不论是作为科学计算还是用于实时过程控制,都必须通过I/O设备与外界交4/7 换信息,因此,输入/输出操作是微机原理和微机应用的重要内容。由于外部设备的多样性,在与微机相连时都必须通过I/O接口电路连接,因此微型计算机应用系统的研制和开发实际上就是I/O接口电路的研制和开发。本章正是遵循这样一种观点,重点介绍了微型机输入、输出、I/O接口方面的一些基本概念。这些内容都是微机原理与接口技术必不可少的重要内容。
通过本章的学习应重点掌握以下内容。
I/O接口、I/O端口、端口地址、I/O端口地址的编址方式及特点。 微型计算机中采用I/O接口的必要性。
I/O接口中3个重要端口(数据端口、控制端口、状态端口)的各自定义、作用及特点。
I/O接口的功能、基本组成。
CPU与I/O设备间的数据传送方式(即程序控制方式、中断方式、DMA方式)的各自含义,工作过程,适用场合、特点,特别是DMA方式的一些基本概念。
第八章 中断系统
本章知识要点:
中断系统、中断请求、中断源、中断判优等概念。 中断向量与中断类型码。 中断调用的实现过程。
中断程序设计的一般方法。
可编程中断控制器8259A的工作方式与应用。 本章小结:
中断是为解决快速的CPU与慢速的I/O设备之间的矛盾而引入的。随着计算机技术的发展,中断概念的内涵和功能大大地延伸和发展了。中断系统不仅能解决上述矛盾成为主机与外设间数据传送控制的有效方式,而且还可以用于故障自动处理,内部软件中断,实现分时操作,实时控制,多道程序等,成为提高计算机系统可靠性和工作效率的重要技术,是衡量机器性能的重要因素。
本章在介绍了中断的基本概念基础上着重介绍了中断系统和可编程中断控制器8259A的工作原理、内部结构、编程命令及简单应用等内容。
一个完整的中断过程应该包括:中断请求、中断判优、中断响应、中断处理和中断返回5个阶段,而在每一阶段中中断系统又有许多具体的操作。不同的微机系统的中断系统的结构可能不同,但所完成的基本功能是相同的,中断处理的过程也是相同的。
中断功能是靠可编程中断控制器8259A配合CPU完成的。一片8259A可以管理8级硬件中断,配合CPU可以完成优先级排队管理,接受外设中断请求,提供中断类型码。8259A有多种工作方式(优先级管理方式、中断结束方式、屏蔽方式、中断申请信号的触发方式等),这些方式都可由初始化命令字和操作命令字来设置或动态改变。在具体使用8259A时要按规定的次序进行初始化,工作过程中可以通过操作命令字对其工作方式进行动态改变。中断服务程序是8259A应用的体现,编写中断服务程序是应用8259A解决实际问题的关键。5/7 中断服务程序的功能与中断源的期望相一致。不同的中断源,中断服务程序的处理内容不同,但中断服务程序的基本结构模式是一样的。
通过本章的学习,应该重点掌握以下内容。
掌据有关中断的基本概念,包括一个完整中断的5个阶段以及各阶段的操作内容,CPU响应中断的条件。
理解中断优先级、中断嵌套、中断屏蔽、中断向量等基本概念。
了解8086/8088中断系统中的中断源分类,内部中断、外部中断的定义,特点、响应和处理过程。特别是要了解可屏蔽中断的处理过程,中断向量表以及中断服务程序入口地址的形成方法(过程)。
了解几种常见的BIOS中断调用的应用以及中断服务程序的编写。
掌握可编程中断控制器8259A的功能,内部结构,工作方式以及初始化命令和操作命令的定义及使用方法。
第九章 总线
本章知识要点:
总线的简单介绍和分类。 总线的通信方式。 总线的仲裁方式。
实际中使用的几种总线,包括局部总线、系统总线和通信总线。 本章小结:
本章介绍了总线的基本概念。包括总线分类,总线通信方式,总线仲裁方法,总线标准以及微机常用系统总线的主要特点和体系结构。总线是微型计算机系统中广泛使用的一种技术,是计算机系统中各功能部件间进行信息传送的公共通道,是计算机体系结构的骨架。为使系统结构简单,功能扩充和更新容易,可靠性高,微型计算机系统中大都采用总线结构。
按照总线所处位置和功能,微机系统中的总线可分为4级(4个层次):片内总线、片总线、系统总线和外总线,其中片总线(局部总线)和系统总线(也叫内总线)是学习的重点。片总线,也叫局部总线,是构成系统主板、各种功能板卡使用的总线,与CPU密切相关。在将I/O接口与CPU连接时就要与片总线打交道,是接口设计的重要内容。局部总线概念在多处理器系统中特别重要,不仅可为子系统间的工作并行性提供条件,而且是提高系统传输速率的有效措施,是微机系统结构中采用多总线结构的基础。系统总线是微机系统中各功能部件互相连接和通信的公共通道,是决定微机系统整体性能的关键,微处理器的不断发展实际上也就是系统总线在不断发展。其发展的宗旨是为了提高系统总线的数据传输率,进而提高微机的整体性能。
通过本章的学习,应重点掌握以下内容。
总线的基本概念,包括总线定义、总线分类、总线通信方式、总线仲裁方式。 总线标准化的目的、意义及其对微机系统的组成、生产、维护的影响,总线标准化涉及的内容。
6/7 总线分类,各类总线的含义、特点。特别是片总线、内总线、外总线的含义、特点和表现形态。
常用微机系统总线中应熟悉PC总线、ISA总线和通用串行总线USB,对其他总线(EISA,VESA,PCI)的特点应了解。
第十章 微型计算机接口技术及其应用
本章知识要点:
并行接口芯片8255A的结构。 8255A的工作方式以及编程应用。 定时器/计数器8253的结构。 8253的工作方式以及编程应用。
本章小结:I/O接口的基本任务是要把CPU与外设及各种控制对象连接起来,并使二者之间正确的交换传送信息。因此,I/O接口是任何微机应用系统必不可少的组成部分。微机接口技术是人们深入学习和利用计算机,设计和开发微机应用系统的基础,也是本课程的重点内容之一。I/O接口芯片按功能可分为3种类型。一种是简单的不可编程的输入/输出接口芯片,这种芯片的输入/输出工作模式由硬件逻辑电路决定,是固定的,不可以通过编程来改变;另一种是专用可编程接口芯片,这类芯片只能用作微处理器同指定类型外设的接口;第三种是通用可编程接口芯片,它可用作微处理器与多种类型的外设接口,而且其工作方式、状态等可通过编程来改变,是一种用途广泛的接口芯片。
本章重点讲述了微型计算机中常用的几种可编程接口芯片,包括可编程定时器/计数器82
53、并行接口芯片8255A及其接口。重点介绍了这两种可编程接口芯片的工作原理、内部结构,编程方法和典型应用。通过本章的学习要求能掌握上述接口的基本特性(包括内部结构、外部引脚、特点),初始化编程方法和典型应用(包括硬件连接和应用程序的编写)。具体需要掌握以下几点。
掌握并行接口的特点及应用场合。
掌握8255A与外设连接的3个端口(PA,PB,PC)的特点及使用上的差别,接口信号的分类及使用。
熟悉8255A的方式控制字和3种工作方式及其主要特点、差别,实际应用时的连接方法、初始化编程方法。
熟悉C口置位/复位控制字的作用及写入方法。
能够应用8255A芯片进行简单的并行接口电路的设计和分析。 掌握定时的基本方法。
了解8253的组成、功能,熟悉8253的接口信号和功能。
掌握8253的6种工作方式及其特点,特别是方式0、方式
2、方式3及其与其他方式的区别。
能读懂方式波形图,熟悉8253的方式控制字各位的含义及初始化编程。 能分析和设计以8253作为定时和计数器的简单应用问题。
7/7
微机原理课程设计程序
CODE
SEGMENT
ASSUME
CS:CODE; 初始化8255A,A口工作方式0,输出 START: MOV
DX,63H
MOV
AL,08BH
MOV
BL,OAH
OUT
DX,AL DY:
MOV
CX,30C4H;置定时外循环初始值 MM:
MOV
BH,0AH;置定时内循环初始值
DEC
LP:
MOV
IN
DEC
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
JMP
LP1:
MOV
MOV
JMP
LP2:
MOV
MOV
JMP
LP3:
MOV
MOV
CX DX,62H AL,DX;读取C口值 BH BH,00H MM CX,0000H XD;转向剩余时间显示程序 AL,00H;判断是否有键按下 LP AL,01H;判断是否是1号键按下 LP1 AL,02H;判断是否是2号键按下 LP2 AL,04H;判断是否是3号键按下 LP3 AL,08H;判断是否是4号键按下 LP4 AL,10H;判断是否是5号键按下 LP5 AL,20H;判断是否是6号键按下 LP6 AL,40H;判断是否是7号键按下 LP7 AL,80H;判断是否是8号键按下 LP8 LP AL,86H AH,01H EN
;显示1号抢答成功者并锋鸣
AL,0CBH AL,02H EN
;显示2号抢答成功者并锋鸣
AL,0CFH AH,0CFH
JMP
EN
;显示3号抢答成功者并锋鸣 LP4:
MOV
AL,0E6H
MOV
AH,08H
JMP
EN
;显示4号抢答成功者并锋鸣 LP5:
MOV
AL,0EDH
MOV
AH,10H
JMP
EN
;显示5号抢答成功者并锋鸣 LP6:
MOV
AL,0FDH
MOV
AH,20H
JMP
LP7:
MOV
MOV
JMP
LP8:
MOV
MOV
JMP
EN:
MOV
OUT
MOV
MOV
OUT
JMP
XD:
DEC
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
CMP
JZ
XD9:
MOV EN
;显示6号抢答成功者并锋鸣 AL,87H AH,40H EN
;显示7号抢答成功者并锋鸣 AL,0FFH AH,80H EN
;显示8号抢答成功者并锋鸣 DX,60H DX,AL DX,61H AL,AH DX,AL MD BL
;判断剩余时间并转向显示程序 BL,09H XD9 BL,08H XD8 BL,07H XD7 BL,06H XD6 BL,05H XD5 BL,04H XD4 BL,03H XD3 BL,02H XD2 BL,01H XD1 BL,00H XD0 AL,6FH;显示剩余9秒
JMP
EN1 XD8:
MOV
AL,7FH;显示剩余8秒
JMP
EN1 XD7:
MOV
AL,07FH;显示剩余7秒
JMP
EN1 XD6:
MOV
AL,7DH;显示剩余6秒
JMP
EN1 XD5:
MOV
AL,6DH;显示剩余5秒
JMP
EN1 XD4:
MOV
JMP
XD3:
MOV
JMP
XD2:
MOV
JMP
XD1:
MOV
JMP
XD0:
MOV
JMP
EN1:
MOV
OUT
CMP
JZ
JMP
MD:
MOV
IN
CMP
JZ
JMP
MOV
INT
CODE
ENDS
END
AL,66H;显示剩余4秒
EN1 AL,4FH;显示剩余3秒
EN1 AL,4BH;显示剩余2秒
EN1 AL,06H;显示剩余1秒
EN1 AL,3FH;显示剩余0秒,结束。
EN1 DX,60H DX,AL AL,3FH MD DY DX,61H;一定时间后,若再有输入,则转向某剩余时间AL,DX AL,00H MD DY AH,4CH 21H START
汇编程序设计题
题目一 密码设置模拟
该程序可以进行密码的设置(第一次)和修改(已设置密码)。要求输入的密码不显示。 题目二 计算器
编辑程序可以实现键盘输入数据与运算符,进行“加减乘除”运算。(提示:先输入数据与运算符,保存,再按照运算符选择对应的子程序;输入的数据是用字符表示的,需要转换;要有良好的界面(提示信息))
题目三工作周期判断程序
输入年、月、日,能够判断当日的星期数,并进行输出。(以校历为依照,可设某日为起点,根据相差的天数与7的关系进行判断)。
题目四 PC扬声器发声
利用8253驱动PC机内扬声器发声,PC结构参考相关文献资料。 题目五 乐曲播放
利用PC机内8253实现乐曲播放。 题目六 按键选择乐曲播放
利用按键选择播放不同乐曲。( ★ )(自制交互界面实现按键选择★★) 题目七 实现闪烁文字效果 编程提示:
提示信息于屏幕中央显示出来,用光标定位子程序将光标定位于80*25显示方式的第8行第10列,然后输出一条提示信息,接着调用屏幕上卷子程序上卷一行,接着再定位光标,然后显示下一条提示信息,直到所有信息显示完毕,对于闪烁的信息,同样是定位光标,然后用BIOS功能调用13H来显示闪烁信息,当BL的高位为1时,字符闪烁。 mov ah,00h mov al,03h ;设置显示方式为80*25,16色文本 int 10h 题目八
数字秒表
设计可以显示1~60秒的无存储功能的秒表,最小单位为毫秒。 题目九
倒计时牌
设计日期倒计时牌界面,可输入设定日期,显示当前日期的统计天数,如奥运计时牌。 题目十
数字时钟
编程实现时钟功能,按秒刷新,要求定位在屏幕右上角。
硬件设计题
总体要求:根据题意自行设计电路,编写相关汇编程序。 题目一
交通灯控制系统
1.利用8253定时,8259中断及8255设计电路,实现十字路口交通灯模拟控制。 2.实现能自动控制和手动应急控制。
3.实现能随时可以调整自动模式的绿灯和红灯时间。 题目二 实现特定功能的键盘及LED显示
了解键盘及LED显示接口原理,设计实验电路图完成以下功能: 1. 按1键显示年; 2. 按2键显示月日; 3. 按3键显示GOOD ;
4. 按4键数码管由左到右字符“0”循环显示。 5.自行设计特效显示功能。 题目三
LED七段数码管数字钟
设计并完成LED七段数码管数字钟电路,数字钟显示格式为:HH:MM:SS。要求:具有通过键盘能够调整时、分、秒的功能。 题目四
闪烁灯
利用8253和LED灯相结合实现闪烁灯效果。 题目五
电子钟
利用8253定时器设计一个电子钟,并定义一个启动键。当按下该键时电子时钟从当前设定值开始走时。
附录:实验箱功能模块电路图
学号: 学生姓名: 打印日期: 评分: 评语:
实验报告
COURSE PAPER 8255控制开关状态显示
学院 :机电工程与自动化学院
一、实验目的;
(本课程设计是在完成《微机原理与接口技术使用教程》知识后进行的一次综合性训练。通过本课程设计,既可以巩固对所学知识的理解和掌握,又可以培养解决实际问题的本领,也能够提高运用文字图表表达设计思想和对Proteus与Emu8086应用的能力。
二、实验要求;
(1)功能要求:设定8255的PA口为开关量输入,PB口为开关量输出,要求能随时将PA口的开关状态通过PB口的数码管显示出来,如开关为0000,则数码管显示为0;若开关为1111,则数码管显示为F。
(2)具体参数:将8255A的端口A设置为方式0并作为输入口,读取开关量,PB口设置为方式0作为输出口。并设定A、B、C口和控制口的地址为60H、62H、64H、66H。LED为共阴极连接方式。
(3)用Proteus画出实现上述功能的8086和8255及LED相关连接的硬件电路,编写相关程序,结合emu8086,完成仿真调试,给出硬件电路图、程序代码和仿真结果图。
三、实验说明;
利用前期实验建立组态控制 组态软件的操作界面和主要功能; 混料罐工程或交通灯工程工程组态
四、实验步骤; (1)硬件设计
8255A的四个端口地址为60H、62H、64H、66H。其二进制码分别为0110 0000H、0110 0010H、0110 0100H、0110 0110H。则可以判断,8255A的A0与A1端口应该与8086的A1和A2端口对应。8086的A
7、A
4、A
3、A0为0,A
6、A5为1时,8255A接受指令。为完成上述操作,可以使用138译码器。8255A的A端口作为输入口,连接四位开关;B端口作为输出口,连接一个共阴极的LED显示管。
(2)硬件电路图
(3)汇编语言设计 assume cs:code code segment start: MOV DX,066H MOV AL,90H OUT DX,AL
AA: MOV BX, OFFSET TABL MOV DX,060H IN AL,DX AND AL,0FH XLAT MOV DX,062H OUT DX,AL JMP AA
TABL: DB 3FH,06H,5BH,4FH DB 66H,6DH,7DH,07H DB 7FH,6FH,77H,7CH DB 39H,5EH,79H,71H
code ends end start (4)实验结果
五、实验心得;
通过对proteus及emu8086软件的应用,可以使我将从课堂与书本上学习到的知识,以模拟的方式,制作成成品。在本次课外项目中,我对于8255A的工作方式以及8086如何控制其他元器件输入输出数据有了清晰的认识。通过使用模拟软件,我有了更多的方式去深入了解课本上的知识。
微型计算机原理与接口技术课程总结
系
别 :专
业:班
级:姓
名:学 号:指导
老师:
电子信息与电气工程系
自动化
自动化二班
姚兰兰
王敬生
1205032038
摘要:自20世纪70年代第一代微型计算机问世以来,计算机技术以惊人的速度发展,涌现了数十个品种几百个型号的微处理器,数据宽度从8位、16位、32位发展到了64位,处理器芯片的CPU核心发展到了双核乃至4核、6核和8核,当前微型计算机的发展已经进入了智能多核时代。这门课程系统归纳和清晰展示已经发展了40多年的计算机高新技术,深入浅出地讲清楚那些看似深奥的计算机知识。
关键字:微机原理 8086/8088 接口技术
1
正文:
微型计算机原理与接口技术共学了九章,内容包括2部分:第1~5章是基础部分,以8086为主要对象,包括绪论、8086 CPU、寻址方式、指令系统、汇编语言程序设计和存储器。第6~9章讨论了接口和总线技术,包括中断、DMA和I/O接口以及82
53、82
54、8259A、8251A。
第一部分:
1、8086系统
(1)BIU与EU的动作协调原则:
它们两者的工作是不同步的,正是这种既相互独立又相互配合的关系,使得8086/8088可以在执行指令的同时,进行取指令代码的操作,也就是说BIU与EU是一种并行工作方式,改变了以往计算机取指令→译码→执行指令的串行工作方式,大大提高了工作效率,这正是8086/8088获得成功的原因之一 (2)它的工作模式:有最小和最大 (3)它的寻址方式: a、数据操作数
这类操作数是与数据有关的操作数,即指令中操作的对象是数据。数据操作数又可分为: A 立即数操作数。指令中要操作的数据包含在指令中。 B 寄存器操作数。指令中要操作的数据存放在指定的寄存器中。 C 存储器操作数。指令中要操作的数据存放在指定的存储单元中。 D I/O操作数。指令中要操作的数据来自或送到I/O端口。 b、地址操作数
这类操作数是与程序转移地址有关的操作数,即指令中操作的对象不是数据,而是要转移的目标地址。它也可以分为立即数操作数、寄存器操作数和存储器操作数,即要转移的目标地址包含在指令中,或存放在寄存器中,或存放在存储单元之中。
对于数据操作数,有的指令有两个操作数:一个称为源操作数,在操作过程中其值不改变;另一个称为目的操作数,操作后一般被操作结果代替。有的指令只有一个操作数,或没有(或隐含)操作数。
对于地址操作数,指令只有一个目的操作数,它是一个供程序转移的目标地址。下面以MOV指令为例:
MOVdst,src;(dst)←(src)
2、I/O接口总线与中断
中断传送方式的优点是:CPU不必查询等待,工作效率高,CPU与外设可以并行工作;由于外设具有申请中断的主动权,故系统实时性比查询方式要好得多。但采 2
用中断传送方式的接口电路相对复杂,而且每进行一次数据传送就要中断一次CPU,CPU每次响应中断后,都要转去执行中断处理程序,且都要进行断点和现场的保护和恢复,浪费了很多CPU的时间。故这种传送方式一般适合于少量的数据传送。
第二部分:
1、8253的引脚功能
与系统总线相连:数据引脚D0—D
7、地址引脚A
1、A0、控制引脚RD/CS/WR;通道引脚CLKGATEOUT其他引脚GNDVCC
2、可编程计数器/定时器8253的工作方式
方式0:计数结束中断方式,方式1:可编程单稳态输出方式,方式2:比率发生器(分频器),方式3:方波发生器,方式4:软件触发选通,方式5:硬件触发选通。
3、可编程外围接口芯片8255A及其应用
8255A:引脚功能、内部结构-----A口B口C口、实际工作方式----数据传送过程、 实际使用------硬件连线------软件编程。
3种工作方式:方式0:基本输入/输出,方式1:选通输入/输出,方式2:双向传送
8255A的引脚:与系统总线相连:数据引脚D0—D7,地址引脚A1—A0,控制引脚RDCSWRRESET;端口线:端口PA7—PA0;端口C:PC7—PC4PC3—PC0;端口B:PB7---PB0;其他引脚:GNDVCC
实际应用 :
由于微型计算机技术的发展日新月异,新技术不断涌现,我们所学的芯片及其应用要适应生活和科技的需求,就拿8255芯片举例:
在实验中我们应用可编程输入输出接口芯片8255来实现交通灯控制实验,我们用8255的PA0..2、PA4..6来控制LED指示灯,模拟出交通灯的交替闪烁功能。这个小实验可以模拟出城市中十字路口的红绿灯情况,用8255这个芯片就可以实现,所以可以看出我们学习微机原理与接口技术的重要性。主机与外设的链接经常使用两种接口,并行接口和串行接口。而8255是由三个并行输入输出端口,读写控制逻辑,A组和B组控制电路,数据总线缓冲器构成。所以这个实验使我们熟悉了8255内部结构,熟悉了8255芯片的3种工作方式以及控制字格式。
3
总结:
这门课程很注重系统性,先进性和实用性,前后呼应,并有大量的程序和硬件设计类题目,使学生能够深入了解计算机的原理、结构和特点,以及如何运用这些知识来设计一个实用的微型计算机系统。在此门课程的学习过程中,老师给我们讲解了一个个重要的知识点,引导我们很快的了解微机原理知识。在一个学期的课程学习中,我虽然没有将本门课程学得非常透彻,但对其中重要的内容还是有了大致的了解,并对微机原理的主要知识点有了大致的掌握,我将会在以后的学习中继续学习和探究本门课程,我相信此门课程将会对本专业后期的学习以及在印刷领域的应用产生重大的影响,并会在以后的学习生活或工作中得到更广泛的应用。
推荐阅读:
微机原理课程设计题目与要求05-30
微机实验报告五06-14
微机接口技术实验报告06-12
微机员岗位职责06-27
教师办公微机使用管理制度05-25
微机室使用注意事项06-01
宁夏大学继续教育学院,高等职业技术学院微机室管理办法06-28
抽屉原理答案06-09
通信原理考试总结06-01
激光原理考点总结06-12