




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理复习考试题型:选择、填空、判断、存储器扩展应用、程序分析、编程(8253、汇编)第1章 微型计算机系统导论重点和难点分析本章的重点和难点在于掌握微型计算机系统的组成。 1)冯诺依曼体系结构基本设计思想:以二进制表示指令和数据;用程序控制硬件的执行;由五大部件构成(运算器、控制器、存储器、输入/输出设备)。2)微处理器的结构及各部件的功能 微处理器是将运算器和控制器以及寄存器阵列集成在一片硅片上而制成的集成电路芯片。运算器用来进行算术运算或逻辑运算以及移位循环等操作。控制器负责对指令进行译码和分析,并发出取数、执行、存数等控制命令。寄存器阵列实际上相当于微处理器内部临时存放数据、指令、状态信息的RAM。3)存储器(主存或内存)的基本概念和操作 存储器用来存储程序或数据,计算机要执行的程序以及要处理的数据都要事先装入到内存中才能被CPU执行或访问。务必要弄清楚有关位、字节、字、字长、存储单元地址、存储容量等概念。4)I/O接口与输入/输出设备 I/O接口是微机与输入/输出设备之间进行信息交换的桥梁。不同的外设必须通过不同的I/O接口才能与微机相连。 例1 试说明位、字节、字、字长、存储单元地址、存储容量等概念。 位:二进制信息的最小单位。字节:由8位二进制数组成,可以存放在一个存储单元中。字节是字的基本组成单位。字:计算机中作为一个整体来处理和运算的一组二进制数,是字节的整数倍。字长:每个字包括的位数称为计算机的字长。存储单元地址:每个存储单元的编号称为存储单元地址。存储容量:内存中存储单元的总数。第2章 计算机中的数制和编码重点和难点分析本章的重点和难点在于掌握数制转换及补码运算。1)数制的转换数制的转换重点要掌握十进制数转换为二进制数的方法,其转换一般用除2取余法(整数部分)和乘2取整法(小数部分)。例1 将十进制数25.6875转换为二进制数和十六进制数。2) 机器数和真值的概念3)补码的加减运算 补码的加减运算的特点是符号位一同参加运算。作减法时,可将减数变补与被减数相加来实现。运算时要注意字长、数值范围及溢出判断。一般只有在同号相加或异号相减时才可能产生溢出。 例2 有两个数X=-53,Y=+79,求X-Y,并判断结果是否溢出。解:因为计算机处理的均是补码数,所以X=-53 X原= 10110101B X补=11001011BY=+79 Y原=01001111B Y补=01001111B-Y补=10110001B(将Y补连同符号位一起求反加“1”而得)X-Y=X补-Y补=X补+-Y补=11001011B+10110001B=01111100B11001011 B-53补 + 10110001B-79补 1 01111100B+124补 CF=1,DF=0, OF=CFDF =1 ,产生溢出,结果出错。实际上:(-53)-(+79)=-132 255,已超出有效的中断类型码范围。(12)错误。XCHG指令不允许立即数做它的操作数。可改为:MOVCX,0FFFHXCHGDX,CX3)算术运算指令 加减指令主要考虑溢出问题对标志位的影响,乘除指令主要了解有符号数运算中符号的处理。此类指令的难点在于BCD码的调整指令。例3 试编写一程序段实现两个压缩型BCD码相加,即19H+3H=?解: MOVAL,19H MOVBL,3H ADDAL,BL DAA程序执行后:(AL)=22H例4 在已学的指令中,可实现累加器清0的单条指令有哪些?比较它们的功能。答:共有以下四种方法:(1)MOV AX,0 ;仅将累加器清0,不会影响任何标志位(2)SUB AX,AX;累加器清0的同时影响所有状态标志,具体来说: ;ZF、PF置1,CF、AF、SF、OF均清0(3)AND AX,0;将累加器清0,ZF、PF置1,CF、OF 、SF清0(4)XOR AX,AX;将累加器清0,ZF、PF置1,CF、OF 、SF清0例5 若要判断某带符号数的正、负而不影响其原值,可使用哪些方法? 答:设带符号数为oprd,判断方法可有如下几种:(1) 执行指令 ADD oprd,0 之后,判断SF:SF =0,oprd为正数,否则为负。(2) 执行指令 SUB oprd,0 之后,判断SF:SF =0,oprd为正数,否则为负。(3) 执行指令 CMP oprd,0 之后,可直接判断SF:SF =0,oprd为正数,否则为负;(4)执行指令 CMP oprd,80H(或8000H)之后,判断CF:CF =1,oprd为正数,否则为负。(5)执行指令 AND oprd,oprd(或全“1”)之后,判断SF:SF =0,oprd为正数,否则为负。(6)执行指令 TEST oprd,oprd(或全“1”)之后,判断SF:SF =0,oprd为正数,否则为负。(7)执行指令 TEST oprd,80H(或8000H)之后,判断SF:SF =0,oprd为正数,否则为负;或判断ZF:ZF =1,oprd为正数,否则为负。 (8)执行指令 OR oprd,oprd(或全“0”)之后,判断SF:SF =0,oprd为正数,否则为负。(9)执行指令 XOR oprd,0 之后,判断SF:SF =0,oprd为正数,否则为负。例6 设若标志寄存器原值为0A11H,SP=0060H,AL=4。下列几条指令执行后,标志寄存器、AX、SP的值分别是多少?PUSHFLAHFXCHGAH,ALPUSHAX SAHFPOPF答:指令执行后标志寄存器的值为0411H,AX=0411H ,SP=005EH。例7 已知有程序段如下:MOV AL,35HMOV DL,ALAND DL,0FHAND AL,0F0HMOV CL,4SHR AL,CLMOV BL,10MUL BLADD AL,DL程序段执行之后,AL等于多少?该程序段完成了什么功能? 答:程序段执行后AL=23H。该程序段实现了将AL中的1个压缩BCD码转换为十六进制数并存回AL中的功能。作业题分析5、若(CS)E000H,说明代码段可寻址物理存储空间的范围。 最小物理地址为:(CS)10H0000HE0000H 最大物理地址为:(CS)10HFFFFHEFFFFH 代码段可寻址物理存储空间的范围是:E0000HEFFFFH6、设(SP)2000H,(AX)3000H, (BX)5000H,执行下列程序段后,(SP)?,(AX)?, (BX)?PUSH AXPUSH BXPOP AX(SP)1FFEH,(AX)5000H, (BX)5000H10、设(BX)=6D16H, (AX)=1100H, 写出下列三条指令执行后,AX和BX寄存器中的内容。MOV CL, 06HROL AX, CL ; (AX)=4004HSHR BX, CL ; (BX)=01B4H12、指出下列程序段的功能(1)MOV CX, 10 CLD LEA SI, First LEA DI, Second REP MOVSB将数据段中首地址为First的10个字节传送到附加数据段首地址为Second的内存区中。(2)CLD LEA DI, 0404H MOV CX,0080H XOR AX,AX REP STOSW将附加数据段首地址为0404H的128个字存储单元的内容清零。第5章 汇编语言程序设计重点和难点分析本章重点与难点是汇编语言源程序的组织结构和汇编语言程序的设计方法。1)汇编语言源程序的组织结构 一个汇编语言源程序允许包括多个代码段和其他段,但至少要有一个代码段。在代码段中下面的内容是不可缺少的:(1)段定义(使用SEGMENT/ENDS语句);(2)约定段寄存器(物理段)和段(逻辑段)的关系(可用一个或多个ASSUME语句);(3)装填段寄存器(假如有其他段存在);(4)返回DOS(可使用标准或非标准的方法)。2)汇编语言程序的设计方法例1 编写一个完整的源程序,将数据28、-20、-15、9、-27、39、6、-5中的正数放入以BUFFER为首址的数据缓冲区中。 答:一种可能的程序如下:DATA SEGMENTBLOCK DB 28,-20,-15,9,-27,39,6,-5COUNT EQU $-BLOCKBUFFER DB COUNT DUP(?)DATA ENDSCODE SEGMENTASSUMECS:CODE,DS:DATA,ES:DATABEGIN: MOVAX,DATA MOVDS,AX MOVES,AX MOVCX,COUNT LEASI,BLOCK ;源数据区指针 LEADI,BUFFER ;正数存放区指针 CLD ;自动增量AGAIN: LODSB;取源数据,并修改SI TEST AL,80H ;取符号位,不影响AL JS GO;符号位为1,是负数,不存 STOSB ;存正数并修改DIGO: LOOP AGAIN MOVAH,4CH;返回DOS INT21HCODE ENDS ENDBEGIN思考:不用串操作指令的话,程序如何写?例2 数据段中有一个由小写英文字母组成的字符串,编程将各小写字母转换成对应的大写字母,并存放起来。答:一种可能的程序:DSEG SEGMENT STR1 DB djdwpneasmv, $ COUNTEQU$ - STR1 - 1 CHARDB0AH, 0DH STR2DBCOUNT DUP(?), $DSEG ENDSCSEGSEGMENTASSUMECS:CSEG,DS:DSEG,ES:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV ES,AX;有STOS指令,需用ESLEA DX,STR1;显示小写字母串MOV AH,9INT21HCLD;自动增量LEASI,STR1;SI指向小写字母串LEADI,STR2;DI指向结果存放处MOVCX,COUNT;转换次数NEXT:LODSB;取1个小写字母至AL中SUBAL,a;转换为大写字母ADDAL,ASTOSB;存放LOOP NEXTMOVDX,OFFSET CHAR;换行显示大写字母串MOVAH,9INT21HMOV AH,4CHINT21HCSEG ENDS END START如果题目改为:数据段中有一个由大小写英文字母组成的字符串,编程将各小写字母转换成对应的大写字母,并存放起来,程序如何写?作业题分析4. 假设程序中的数据定义如下:LNAMEDB30 DUP(?)ADDRESSDB30 DUP(?)CITYDB15 DUP(?)CODE_LISTDB1, 7, 8, 3, 2 (1)用一条MOV指令将LNAME的偏移地址放入BX。 (2)用一条指令将CODE_LIST的头两个字节的内容放入SI。 (3)写一条伪指令定义符CODE_LIST的值等于CODE_LIST域的实际长度。解:(1) MOV BX,OFFSET LNAME(2) MOV SI,WORD PTR CODE_LIST(3) CODE_LENGHT EQU $-CODE_LIST6. 对于下面的数据定义,各条MOV指令单独执行后,有关寄存器的内容是什么?FLDBDB?TABLEADW20DUP(?)TABLEBDBABCD (1) MOV AX, TYPE FLDB ;(AX)=1 (2) MOV AX, TYPE TABLEA;(AX)=2 (3) MOV CX, LENGTH TABLEA ;(CX)=20 (4) MOV DX, SIZE TABLEA ;(DX)=40 (5) MOV CX, LENGTH TABLEB ;(CX)=111. 试编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示“MATCH”,若不相同则显示“NOMATCH”。11、参考答案DATA SEGMENTSTRMATCH DB MATCH,0AH,0DH,$STRNMATCH DB NOMATCH,0AH,0DH,$STRING1 DB GOOD MORNING!LENG1 EQU $-STRING1 ; LENG1的值为13STRING2 DB GOOD AFTERNOON!LENG2 EQU $-STRIGN2 ; LENG2的值为15DATA ENDSCODE SEGMENTASSUME CS : CODE , DS : DATASTART : MOV AX,DATA MOV DS,AXMOV CX,LENG1 CMP CX,LENG2 ;串长度不同内容就不用比JNZ NMATCHLEA SI,STRING1LEA DI,STRING2CLDREPE CMPSB JCXZ MATCH ;CX0转向MATCHNMATCH : MOV DX,OFFSET STRNMATCHMOV AH,09H INT 21H JMP EXITMATCH : MOV DX,OFFSET STRMATCH MOV AH,09HINT 21HEXIT: MOV AH,4CH INT 21HCODE ENDSEND START12. 编写一个程序,要求能从键盘接收一个个位数N,然后响铃N次,(响铃的ASCII为07H)。CODE SEGMENTassume cs:codetimes dw 0,0didas equ 18;didas=时钟嘀嗒数;计数器输出方波的频率约为18.2(1.19MHz/65536);1秒钟约嘀嗒18.2次input: mov ah,01H int 21H cmp al,20H je exit cmp al,30H jle inputcmp al,3AH jge input sub al,30H mov cx,ax and cx,00FFHbell: mov dl,07H mov ah,2H int 21Hcall delay1sloop belljmp inputdelay1s proc nearpush dx push cx xor ax,ax ;功能号ah=0,int 1ah的功能是读时钟int 1ah ;调用1ah中断,取得当前时间返回给cx,dx mov Times,dx ;dh:dl=秒:1/100秒mov Times2,cx ;ch:cl=时:分Read_Time: xor ax,axint 1ah sub dx,Times sbb cx,Times2 cmp dx,Didas jb Read_Time pop cx pop dx ret Delay1S EndP exit : MOVE AH,4CH INT 21HCODE END编程方面复习重点:BCD码与二进制数(或十六进制数)之间转换;判断数的正负;求累加和;找最大值或最小值;第6章 半导体存储器重点和难点分析 本章的重点是存储器的扩展。存储器与CPU的连接实际上是与三总线的相关信号的连接。其中,与数据总线和控制总线的连接比较简单,而与地址总线的连接分为低位地址线的连接和高位地址线的连接。在地址线的连接中,低位地址线的连接较简单,直接和存储芯片的地址信号连接作为片内地址译码,而高位地址线的连接主要用来产生片选信号(称为片间地址译码),以决定每个存储芯片在整个存储单元中的地址范围,避免各芯片地址空间的重叠。复习提示:看懂图6.18, 6.19, 6.20,例题6.1, 6.2。第7章 输入输出与中断(1)扩展存储器与扩展I/O接口电路的相同与不同点。(一般了解) 相同点:地址译码原理相同,片内寻址线连接相同,读写选通线相同,高地址库与低地址库的安排相同(8086系统),数据总线连接相同。不同点:寻址存储器空间和I/O空间的地址总线的条数不同,8086/8088系统中寻址存储器空间有A19A0共20根地址总线,而寻址I/O空间只有A15A0共16根地址总线(直接端口寻址时,只有A7A0共8根地址线);控制总线中的存储器I/O控制信号在M/IO译码电路中的有效电平不同,在扩展存储器的译码电路中,应使M/IO为高时,译码输出有效,在扩展I/O接口的译码电路中,应使M/IO为低时,译码输出有效。(2)外部中断引起的程序转移与子程序调用指令CALL引起的程序转移是不同的。(不作重点) 子程序调用是由CALL指令引起的,是与CPU同步的。也就是说,CPU能确切地知道何时将执行子程序;而外部中断的响应与CPU是异步的,中断请求由外设提出,可能发生在CPU执行任何指令时(必须满足中断响应条件),即CPU不能确知何时执行中断服务子程序。CPU在转入子程序前的处理不同。在用CALL指令调用子程序时,CPU只需自动压入CALL指令下一条指令的地址(常称为断点地址),新的程序执行地址由CALL指令中的程序地址寻址方式获取;而在响应外部中断请求转入相应的服务子程序之前,CPU需要将标志寄存器FLAGS的状态和断点地址均压入堆栈,而且需要外部硬件配合获取中断类型码,由此计算中断矢量地址,从中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第3单元-《思乡曲》说课稿-2025-2026学年粤教版初中音乐七年级下册
- 2025国际设备采购合同的当事人被称为甲乙双方
- 七年级生物上册 第一单元 第一章 第二节调查周边环境中的生物说课稿 (新版)新人教版
- 2025荆州计算机硬件采购与维护服务合同
- 音乐知识教学设计-2025-2026学年初中音乐七年级下册(2024)人音版(2024 主编:赵季平杜永寿)
- 潍坊事业单位笔试真题2025
- 2025合同模板:解除房屋租赁合同协议书范本
- 2025年通辽市国企考试真题
- 2025房屋租赁代理合同
- 2025绿源小区前期物业管理合同
- 麻醉科职责及管理制度
- 教科版五年级上册科学期中测试卷附答案(夺分金卷)
- 药房管理规章制度目录
- 中职第1课 社会主义在中国的确立和探索试题
- 2025年辽宁省交投集团招聘笔试参考题库含答案解析
- 2024年版高尔夫球场场地租赁及会员服务协议3篇
- 香港 信托合同范本
- 少先队活动课《民族团结一家亲-同心共筑中国梦》课件
- 阀门培训课件
- 《焦化机械设备维护检修标准》
- DB11∕T 899-2019 盆栽蝴蝶兰栽培技术规程
评论
0/150
提交评论