(完整word版)微机原理程序分析题汇总
(完整版)微机原理习题库(51单片机)含答案.doc

第一章单片机概述与结构一、选择题1.访问片外部数据存储器时,不起作用的信号是(C)。
A. /RD B. /WE C. /PSEN D .ALE2.51 单片机 P0 口用作输出时,应外接( A )。
A.上拉电阻 B .二极管C.三极管 D .下拉电阻3.进位标志 CY 在( C )中。
A.累加器B.算逻运算部件 ALU C.程序状态字寄存器PSW D. DPTR 4.堆栈数据的进出原则是( D )。
A.先进先出 B .进入不出C.后进后出 D .先进后出5.51 单片机系统中,若晶振频率为6MHz ,一个机器周期等于( D )μs。
A. 1.5 B . 3 C. 1 D .26.在家用电器中使用单片机应属于微计算机的( B )。
A.辅助设计应用B.测量、控制应用C.数值计算应用D.数据处理应用7.PC 的值是( C )。
A.当前正在执行指令的前一条指令的地址 B .当前正在执行指令的地址C.当前正在执行指令的下一条指令的地址 D .控制器中指令寄存器的地址8.单片机应用程序一般存放在( B )中。
A. RAM B.ROM C.寄存器D.CPU 9.在堆栈操作中,当进栈数据全部弹出后,这时SP 应指向( D )A.栈底单元 B . 7FH 单元C.栈底单元地址加1D.栈底单元地址减10.51 单片机的并行I/O 口信息有两种读取方法:一种是读引脚,还有一种是(A A.读锁存器B.读数据库C.读 A 累加器D.读 CPU1 )。
二、填空题1.单片机复位后,SP、 PC 和 I/O 口的内容分别为07H\000H\FFH。
2.单片机有四个工作寄存器区,由PSW 状态字中的RS1 和 RS0 两位的状态来决定。
单片机复位后,若执行 SETB RS0 指令,此时只能使用1区的工作寄存器,地址范围是08H---0FH。
3.51 单片机驱动能力最强的并行端口为P0 端口。
4.51 单片机 PC 的长度为16 位, SP 的长度为 ___8____位, DPTR 的长度为 _16__ 位。
微机原理试题集+答案

微机原理试题集+答案第1章概述1.电子计算机主要由运算器、控制器、存储器、输入设备和输出设备等五部分组成。
2.运算器和控制器集成在一块芯片上,被称作CPU。
3.总线按其功能可分数据总线、地址总线和控制总线三种不同类型的总线。
4.计算机系统与外部设备之间相互连接的总线称为系统总线(或通信总线);用于连接微型机系统内各插件板的总线称为系统内总线(板级总线); CPU内部连接各寄存器及运算部件之间的总线称为内部总线。
5.迄今为止电子计算机所共同遵循的工作原理是程序存储和程序控制的工作原理。
这种原理又称为冯·诺依曼型原理。
第3章微处理器及其结构1.8086/8088 CPU执行指令中所需操作数地址由 EU 计算出16 位偏移量部分送 BIU ,由 BIU 最后形成一个 20 位的内存单元物理地址。
2.8086/8088 CPU在总线周期的T1 时刻,用A19/S6~A16/S3 输出 20 位地址信息的最高 4 位,而在其他时钟周期,则输出状态信息。
3.8086/8088 CPU复位后,从 0FFFF0H 单元开始读取指令字节,一般这个单元在 ROM 区中,在其中设置一条跳转指令,使CPU对系统进行初始化。
4.8086系统的存储体系结构中,1MB存储体分 2 个库,每个库的容量都是512K字节,其中和数据总线D15~D8相连的库全部由奇地址单元组成,称为高位字节库,并用BHE作为此库的选通信号。
5.8086/8088系统中,可以有 64K 个段起始地址,任意相邻的两个段起始地址相距 16 个存储单元。
6.用段基值及偏移量来指明内存单元地址的方式称为逻辑地址。
7.通常8086/8088 CPU中当EU执行一条占用很多时钟周期的指令时,或者在多处理器系统中在交换总线控制时会出现空闲状态。
8.8086 CPU使用 16 根地址线访问I/O端口,最多可访问64K 个字节端口,使用 20 根地址线访问存储单元,最多可访问1M 个字节单元。
(完整word)微机原理简答题

1。
微型计算机由那些基本功能部件组成?1).微处理器,2)主存储器,3)系统总线,4)辅助存储器,5)输入/输出(I/O)接口和输入/输出设备2.什么是总线?在计算机中,连接CPU与各个功能部件之间的一组公共线路,称为总线,在计算机中一般有三组功能不同的总线,传输地址信息的称为地址总线,传输数据信息的称为数据总线,传输控制信息的称为控制总线。
(只要答出总线定义,即可)3.简述微型计算机主要特点。
电子计算机是一种能自动,高速,精确地完成各式各样的数据存储,数值计算,逻辑推理,过程控制和数据处理功能的电子机器.计算机的主要特点有四个方面,即:高速性,准确性,逻辑性,通用性。
(只要意思相近即可得分)4.BCD码运算修正规则是什么?BCD码运算修正规则:(1)凡是对应位运算结果为冗余码时,加(减)6修正。
(2)如该位和数有向高位进(借)位时,也在该位加(减)6修正。
(3)如低位修正结果使高位大于9时,高位进行加(减)6修正。
(只要意思相近即可)5.简述微处理器的基本功能。
CPU是组成微机系统的核心部件,其功能如下:(1)算术和逻辑运算,执行数据处理.(2)暂存数据。
(3)实现程序控制,即可取指令,对指令寄存,译码分析并执行指令所规定的操作,还能提供整个系统所需的定时和控制信号。
6.什么是机器数?什么是机器数的真值?数在机器内的表示形式为机器数。
而机器数对应的数值称为机器数的真值8个总线周期8. 8086CPU内部由哪两部分组成?各完成什么工作?在8086内部由BIU和EU两大部分组成,BIU主要负责和总线打交道,用于CPU与存储器和I/O接口之间进行数据交换;EU主要是将从指令队列中取得的指令加以执行。
9. 简述8086内部EU和BIU两大功能单元各自的功能和这样组织的意义。
在8086内部,按功能划分可以分为BIU和EU两大部分,BIU主要负责总线接口,与存储器和I/O接口进行数据传递;而EU则是执行部件,主要是执行指令;这两部分分开可以在执行指令的同时,从存储器中将将要执行的指令取到指令队列,使两部分并行工作,提高CPU的速度.(只要意思为提高CPU的效率即可)10。
(完整版)微机原理试卷库合集(有答案)

微机原理试题库合集第1套一、填空题:(每空1分,共20分)1.以8086/8088CPU标志寄存器中有6个状态标志和_____3____个控制标志。
2.若有二个数8439H和A56AH进行相加,则运算后标志寄存器中的ZF= 0 ,PF=1 ,CF= 1 ,OF= 1 。
3.8086在每个总线周期的T3状态开始对 READY 信号进行采样,若其为高电平,则进入T4状态。
4.设CS=3100H,DS=40FEH,两段的空间均为64K个单元,则两段的重叠区为 32 个单元,两段的段空间之和为 131040个单元。
5.8086/8088系统,中断向量表中,每个中断向量占用___4_____个字节。
6.对于下面的数据定义,各条MOV指令单独执行后,请填充有关寄存器的内容TABLE1 DB ?,?,?TABLE2 DW 26 DUP(?)……MOV AX,TYPE TABLE1;(AX)= 1MOV BX,TYPE TABLE2;(BX)= 2MOV CX,LENGTH TABLE2;(CX)= 26MOV DX,SIZE TABLE2;(DX)= 527.在使用8086间接输入/输出指令时,必须在执行该指令之前将相应的端口地址送入 DX__ 寄存器中。
8.8k×8位的SRAM存储芯片,需要寻址线13根。
9.8086/8088CPU复位后,代码段寄存器CS的值为___FFFFH________ 。
10.8086/8088CPU,由INTR引脚引起的中断称为___可屏蔽______中断。
11.8086/8088系统中,一个栈的深度最大为_____64_____KB。
12.存储器是计算机中的记忆设备,主要用来存放程序和_____数据____ 。
13.在微型计算机系统中,CPU对输入输出的寻址可归纳为__统一编址_和独立编址两种方式。
二、选择题 (每题1分,共10分)1.若由1K×1位的RAM芯片组成一个容量为8K字(16位)的存储器时,需要该芯片数为B 。
(完整word版)西电微机原理上机

4.37 (上机题)编写程序实现,将缓冲区BUFFER中的100个字按递增排序,并按下列格式顺序显示:数据1 <原序号>数据2 <原序号>……算法流程图:调试问题、心得体会:通过这道题,熟悉了流程图画法,掌握了产生随机数,“冒泡法”排序,子函数编写调用等的基本过程,尤其对于中断调用,并利用ASCII码回显和对课本字节型数据“冒泡法”排序改进为字形排序的过程,是我受益匪浅。
并且亲身实践了源程序的汇编、调试也连接。
问题:将字节型冒泡法直接应用于该题,导致出错,该题存储的是字型数据!原因在于只是排列的AL中的数值,并不是产生的随机数!同时对于字型与字节型在运算类指令中的应用还是有误,以及其他的一些小错误,应加以改善!运行结果:程序代码:STACK SEGMENT STACK 'STACK'DW 100H DUP(?)TOP LABEL WORDSTACK ENDSDATA SEGMENTBUFFER LABEL WORDX=17REPT 100X=(X+80)mod 43DW XENDMBUF DW 100 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START:MOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,STACKMOV SS,AXLEA SP,TOPMOV CX,100LEA SI,BUFFERLEA DI,BUFL1:MOV AX,[SI]INC SIINC SIMOV [DI],AXINC DIINC DILOOP L1MOV CX,100DEC CXLEA SI,BUFFERPUSH CXADD CX,CXADD SI,CXPOP CXL2:PUSH CXPUSH SIL3:MOV AX,[SI]CMP AX,[SI-2]JAE NOXCHGXCHG AX,[SI-2]MOV [SI],AXNOXCHG:LOOP L3POP SIPOP CXLOOP L2MOV CX,100LEA SI,BUFFER L4:MOV AX,[SI] CALL DISPAX ADD SI,2CALL XIAOYU CALL XUHAOCALL DAYUCALL DISPCR LOOP L4MOV AH,4CHMOV AL,0INT 21H DISPAX PROC NEARPUSH AXPUSH BXPUSH CXPUSH DXPUSH DIMOV BX,10MOV CX,3L7:XOR DX,DXDIV BXMOV [DI],DX INC DIINC DILOOP L7MOV CX,3L8:DEC DIDEC DIMOV AL,[DI] ADD AL,30HMOV AH,02MOV DL,ALINT 21HLOOP L8POP DXPOP CXPOP BXPOP AXRET DISPAX ENDP DISPCR PROC NEAR PUSH AXPUSH DXMOV AH,2MOV DL,0AH INT 21HMOV AH,2MOV DL,0DH INT 21HPOP DXPOP AXRET DISPCR ENDP XIAOYU PROC NEAR PUSH AXPUSH DXMOV AH,02 MOV DL,3CH INT 21HPOP DXPOP AXRET XIAOYU ENDP XUHAO PROC NEAR PUSH AXPUSH BXPUSH CXPUSH SIMOV CX,100 MOV BX,AX LEA SI,BUF L5:CMP BX,[SI] JZ L6ADD SI,2LOOP L5L6:MOV AX,101SUB AX,CXCALL DISPAXPOP SIPOP CXPOP BXPOP AXRETXUHAO ENDPDAYU PROC NEARPUSH AXPUSH DXMOV AH,02MOV DL,3EHINT 21HPOP DXPOP AXRETDAYU ENDPCODE ENDSEND START4.38 (上机题)按同余法产生一组随机数N(1<N<=50),并按N+50赋给45名同学的5门课程的成绩,要求编程实现计算每个同学的平均成绩,并根据平均成绩统计全班的成绩各等级的人数(A:90~100,B:80~89,C:70~79,D:66~69,E:60~65,F:60分以下),按下列格式显示:Total <总人数>A: <人数1>B: <人数2>C: <人数3>D: <人数4>E: <人数5>F: <人数6>算法流程图:调试问题、心得体会:通过该问题,进一步练习了通过流程图分析设计程序的功能,掌握了随机数产生,子函数调用,分支程序,循环程序,中断调用等过程,进行了调试,找出了数值无法转化为十进制并显示的问题,原因在于未定义临时存储单元。
微机原理及程序设计试题多套汇总(带答案)

微机原理及程序设计试卷(一)一、填空题(共15分,每空1分)1、十六进制数30A.5转换为二进制是1100001010.0101,转换为十进制是778.3125。
2、偏移量是指存储单元相对逻辑段首地址的偏移距离。
3、8088/8086系统中,不改变DS值的情况下,其数据段的最大寻址范围是_____64_KB。
4、PC总线中,IOR为低电平时,表明CPU对端口进行_____读_____操作。
5、8086/8088存储器分四个段,这四个段的段名所对应的段寄存器分别是_____CS__、____DS____、_____ES___、_____SS___。
6、每条指令的执行过程中是由____取指令____、____指令译码____和___指令执行_____等操作组成。
7、I/O端口的编址方式有__独立(单独)编址______和_____统一编址___ 两种二、选择题(共20分,每小题2分)1、在机器数()中,零的表示形式是唯一的。
A、原码B、补码C、反码D、原码和反码2、若采用双符号位判断溢出,当结果的符号位为11时,表示()。
A、结果为正,无溢出B、结果正溢出C、结果负溢出D、结果为负,无溢出3、中央处理机(CPU)是指()。
A、运算器B、控制器C、运算器和控制器D、运算器、控制器和主存储器4、PSW是指令部件中()。
A、指令寄存器B、指令译码器C、程序计数器D、程序状态寄存器5、寄存器间接寻址中,操作数放在()。
A、通用寄存器B、主存单元C、堆栈D、程序计数器6、EPROM是指()。
A、随机读写存储器B、可编程的只读存储器C、只读存储器D、可擦除的可编程只读存储器7、存储周期是指()。
A、存储器的读出时间B、存储器的写入时间C、存储器进行连续读和写操作所允许的最短时间间隔D、存储器进行连续写操作所允许的最短时间间隔8、某一存储单元的逻辑地址为2500H:0010H时,其对应的物理地址为()。
A、2500HB、0010HC、25100HD、25010H9、DMA传送结束由I/O接口向CPU发出中断请求,其目的是( )。
微机原理试题(1)

试题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.为在一连续的存储单元中,依次存放数据41H,42H,43H,44H,45H,46H,可选用的数据定义语句是()A.DB 41,42,43,44,45,46 B.DW 4142H,4344H,4546HC.DW ‘AB’,‘CD’,‘EF’D.DW ‘BA’,‘DC’,‘FE’2.在同一程序段中,定义下面伪指令,正确的是()A.PORT EQU AL B.CONT EQU 3500H AND OFFH PORT EQU 2000HC.STRl DD‘ABCD’D.STR2 DW‘ABCD’3.DA2 DB‘AB’,‘CD’┇MOV AX,WORD PTR DA2+1上述语句执行后AX中的值是()A.‘AD’B.‘BC’C.‘DA’D.‘CB’4.下列数据定义语句中可实现留空20H个字节存储单元的是()A.DB 20 DUP(?) B.DW 20H DUP(?)C.DB 10H DUP(4 DUP(?)) D.DD 08H DUP(?)5.DA TA SEGMENTV AR1 DB 12H,34HV AR2 DB 10H DUP(0)ADR1 DW V AR1,V AR2DA TA ENDS为使ADR1+2字存储单元中内容为0030H,上述方框中应选用的语句是()A.ORG 30H B.DB 2EH DUP(0)C.DB 30H DUP(0) D.ORG $+30H6.如某存储器分段时,表示偏移地址是18位二进制代码,那么一个段最多的存储单元数是()A.32K字节B.32K字C.64K字节D.128K字7.下列寄存器中用来指示堆栈中任意数据区的偏移地址的是()A.BX B.BPC.SI D.DI8.下列指令中有语法错误的是()A.PUSH AX B.PUSH [20H+SI+BX]C.POP CS D.PUSH CS9.下面有语法错误的指令是()A.LDS BL,V AR[SI] B.LEA BX,V AR[SI]C.LES DI,V AR[BX] D.LEA DI,V AR[BP]10.执行PUSH BP指令时,目的操作数的物理地址表达式是()A.16*SS+BP B.16*DS+BPC.16*CS+IP D.16*SS+SP11.把BL中的数据输出到端口8CH中正确指令是()A.OUT 8CH,BL B.IN 8CH,BLC.MOV AL,BL D.MOV AL,BLOUT 8CH,AL IN 8CH,AL12.结果为零的条件转移指令,其测试条件是()A.ZF=1 B.ZF=0C.SF=l D.SF=013.下面程序段完成测试DA-BYTE字节单元中数是否为负数,若是则将全l送DH中,否则全0送DH中,那么程序段中方框里应填的语句是MOV CH,0MOV CH,0FFHZERO:MOV DH,CH()A.JNZ ZERO B.JS ZEROC.JZ ZERO D.JC ZERO14.汇编源程序时,出现语法错误的语句是()A.MOV [BX+SI],BX B.MOV CL,[BP+DI]C.MOV CS,AX D.MOV DS,AX15.设SP初值为3050H,执行指令PUSH BX后,SP的值是()A.304FH B.304EHC.3048H D.3049H16.下列指令执行后影响CF值的是()A.DEC B.XCHGC.LEA D.SHL17.串操作指令中,每次操作后使SI/DI为减量应设置()A.DF=0 B.TF=1C.DF=1 D.TF=018.设AL=57H,BL=24H,执行指令SUB AL,BL后,寄存器内容为()A.AL=57H,BL=24H B.AL=33H,BL=24HC.AL=57H,BL=33H D.AL=33H,BL=019.设CL=8,AL=0C8H,执行SAR AL,CL后,AL中的数据是()A.0FFH B.80HC.00H D.0FEH20.已知BX=028AH,SI=0294H,(DS:051EH)=5432H。
《微机原理》练习(分析题)

《微机原理》练习(分析题)1、以下程序段执行后, A= (),(30H)=()。
MOV 30H,#0AHMOV A , #0D6HMOV R0, #30HMOV R2, #5EHANL A, R2ORL A,@R0CPL A2、设内部 RAM中 59H单元的内容为 50H,写出当执行下列程序段后寄存器 A、R0和内部 RAM中 50H, 51H单元的内容为何值?MOV A,59HMOV R0,AMOV A , #00HMOV @R0, AMOV A, #25HMOV 51H, AMOV 52H, #70H3、假定( SP)=40H ,(3FH)=30H ,( 40H) =60H。
执行下列指令:POP DPHPOP DPL后, DPTR的内容为(),SP的内容是()。
4、已知程序ORG 2100HSTART : MOV DPTR , #2200HMOVX A , @DPTRRR ARR ARR ARR AANL A , #OFHMOVX @DPTR,AHERE : SJMP HEREORG 2200HDATA : DB F8END START执行后, 2200H 单元的内容是()5、已知程序,其中(2100H) =58H,( 2101H) =68HMOV DPTR , #2100HMOVX A , @DPTRMOV R0, AINC DPTRMOVX A , @DPTRCJNE A , 00H , LOOP1SJMP LOOP2L00P1 : JNC L00P2MOV A,R0LOOP2 : INC DPTRMOVX@DPTR , AHERE : SJMP HERE执行后( 2102H) =()6、写出以下程序段运行后,相关寄存器的内容。
MOV A , #50HSETB ACC.1MOV R2,AANL A ,#0FHMOV R3,AXRL A ,#0F0HMOV R4,ACPL APP:LJMP PP7、分析下面的程序段,写出程序执行后的结果(即相关寄存器和相关RAM单元的内容)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.设CPU各个标志位的初始状态均为0,执行指令:
MOV AX,0
DEC AX
后,请问AX=?,SF=?,CF= ?(3分)
AX=FFFFH或-1 (1分), SF=1(1分), CF=0(1分)
(DEC 变量递减一。
MOV AX,0;AX=0;DEC AX;AX=AX-1=-1=FFFFH;SF(符号标志):SF用于反映本次运算结果是正还是负,若某次运算结果的最高位(第8位或第16位)为“1”,则SF=1,否则SF=0;CF(进位标志):保存加法的进位和减法的借位,有进位或借位时CF=1,否则CF=0;结果为-1,所以SF=1,而本题中的借位是溢出借位,故而CF=0)
2.下面程序段的功能是从240H端口读取数据,测试其是否为20H,若不是则将241H端口清0,否则转向NEXT,请将程序补充完整。
(5分)
MOV DX ,240H;端口号放入段寄存器
IN AL,DX;输入数据
CMP AL, 20H;测试是否为20H
JZ NEXT;如果不是转到NEXT
MOV DX,241H
MOV AL,0;将端口数据清零
OUT DX,AL
……
N EXT: ……
1. 定义变量DA1 DB ‘1+2=?’
DA2 DW 2 DUP (0)
NUM EQU $-DA1
分析以下指令执行后寄存器的内容,并填在指令后的横线上。
(5分)
SUB AX, AX
MOV AL,DA1 ;AL=31H;DA1=3
MOV BL,DA2-DA1 ;BL=05H
MOV CX,NUM ;CX=09H
L1:RCL AL,1
JNC L2
INC AH
L2:LOOP L1
程序段执行完后AL=31H,AH=03H
2. 两个压缩BCD数相加,结果保存在内存的SUM单元,如有进位保存在AH中,将下面的程序段补充完整。
(3分)
X1 DB 36H
X2 DB 78H
SUM DB ?, ?
MOV AL,X1
MOV BL,X2
ADD AL,BL
DAA;将两个压缩BCD数相加后一定要用DAA
JC L1
MOV AH,0
JMP L2
L1:MOV AH,1
L2 :MOV SUM ,AL
MOV [SUM+1], AH
1.设初值为AX=1234H,BX=5678H,DX=0ABCDH,则下面一段程序:
MOV CL,4;CL=4
SHL DX,CL;SHL逻辑左移;DX=0BCD0H
MOV BL,AH;BX=5612H
SHL AX,CL;AX=2340H
SHR BL,CL;SHR逻辑右移;BL=01H
OR DL,BL;OR两者相或;DL=D0H,BL=01H;OR DL,BL;DL=D1H
执行后,请问AX=?,BX=?,DX=?(3分)
AX=2340H;BX=5601H;DX=0BCD1H
2.下面程序段的功能是求5到50之和,并将结果存放到SUM单元中,请将程序补充完整。
(5分)
SUM DW 0
……
MOV CX, 46
MOV BX, 5
MOV AX, 0
L1: ADD AX,BX
INC BX
LOOP L1
MOV SUM,AX。