微机原理作业

合集下载

微机原理作业及参考答案

微机原理作业及参考答案

第一章计算机基础(P32)1-1电子管,晶体管,中小规模集成电路、大规模、超大规模集成电路。

1-2把CPU和一组称为寄存器(Registers)的特殊存储器集成在一片大规模集成电路或超大规模集成电路封装之中,这个器件才被称为微处理器。

以微处理器为核心,配上由大规模集成电路制作的只读存储器(ROM)、读写存储器(RAM)、输入/输出、接口电路及系统总线等所组成的计算机,称为微型计算机。

微型计算机系统是微型计算机配置相应的系统软件,应用软件及外部设备等.1-3写出下列机器数的真值:(1)01101110 (2)10001101(3)01011001 (4)11001110答案:(1)+110 (2)-13(原码) -114(反码)-115(补码)(3)+89 (4)-78(原码)-49(反码)-50(补码)1-4写出下列二进制数的原码、反码和补码(设字长为8位):(1)+010111 (2)+101011(3)-101000 (4)-111111答案:(1)[x]原=00010111 [x]反= 00010111 [x]补= 00010111(2)[x]原=00101011 [x]反= 00101011 [x]补= 00101011(3)[x]原=10101000 [x]反= 11010111 [x]补= 11011000(4)[x]原=10111111 [x]反= 11000000 [x]补=110000011-5 当下列各二进制数分别代表原码,反码,和补码时,其等效的十进制数值为多少?(1)00001110 表示原码14,反码14,表示补码为14(2)11111111 表示原码-127,反码-0,表示补码为-1(3)10000000 表示原码-0,反码-127,表示补码为-128(4)10000001 表示原码-1,反码-126,表示补码为-1271-6 已知x1=+0010100,y1=+0100001,x2=-0010100,y2=-0100001,试计算下列各式。

微机原理例题

微机原理例题

一、设某8086系统中包含芯片8253、8259A及8255A各一片,其系统结构示意图1如图所示。

其中,8255A的PA0、PA1口分别连接开关K1、K2,PB口低七位依次接一七段数码管的a~g。

要求系统每隔2秒检测开关状态并更新数码管显示数值:若K0、K1均断开,则数码管将显示数值3;K0闭合、K1断开,则数码管将显示数值2;K0断开、K1闭合,则数码管将显示数值1;K0、K1均闭合,则数码管将显示数值0。

1、编写8255A的初始化程序片断,要求数码管初始状态显示0。

2、系统利用8253计数器2产生频率为500Hz的方波信号,利用计数器1产生周期为2秒的中断请求信号。

编写8253的初始化程序片断。

3、系统将8253计数1输出中断请求信号连接至8259A的IR1端口,设该端口对应中断类型号为41H,并采用普通全嵌套、普通中断结束方式。

写出8259A的初始化程序片断,要求屏蔽其他未使用的中断请求端口。

4、编写不断检测开关状态并更新显示数据的中断处理程序(设显示0-3字形的七段编码40H、79H……已存放在以TABLE为起始地址的存储单元中)。

5、编写采用系统功能调用实现设置中断向量的程序片断。

二、设计一8088微机系统,系统要求CPU配置工作在最小工作模式下,并配置存储器容量为16KB的EPROM,采用27128 (16Kx8位)芯片,地址为90000H—93FFFH;RAM容量为8KB,采用6264 (8Kx8位)芯片,地址为88000H—89FFFH。

在系统结构图的基础上,画出该8088最小方式系统与16KB ROM和8KB RAM存储器的连接图。

三、设计一8086微机系统,系统要求CPU配置工作在最小工作模式下,并配置存储器容量为32KB的EPROM,采用27128 (16Kx8位),芯片,地址为90000H—97FFFH;RAM容量为16KB,采用6264 (8Kx8位),芯片,地址为88000H—8BFFFH。

微机原理习题集以及答案

微机原理习题集以及答案

1 / 108第一部分 例题与习题第1章 微型计算机基础1.1 例 题1.把十进制数137.875转化为二进制数。

P7解:把十进制数转换成二进制数时,需要对一个数的整数部分和小数部分分别进行处理,得出结果后再合并。

整数部分:一般采用除2取余法小数部分:一般采用乘2取整法余数 低位 整数 高位 2 | 137 0.8752 | 68 × 2 2 | 34 1.7502 | 17 × 2 2 | 8 1.5002 | 4 × 2 2 | 2 1.0001 高位 低位 (137)10=()2 (0.875)10=(0.1101)2所以,(137.875)10=(10001001.111)22.把二进制数10011.0111转换为八进制数和十六进制数。

P9解:八进制、十六进制都是从二进制演变而来,三位二进制数对应一位八进制数,四位二进制数对应一位十六进制数,从二进制向八进制、十六进制转换时,把二进制数以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,整数部分在高位补0,小数部分在低位补0。

(10 011.011 1)2=(010 011.011 100)2=(23.34)8(1 0011.0111)2=(0001 0011.0111)2=(13.7)163.将八进制数23.34转换为二进制数。

P9解:(23.34)8=(010 011.011 100)2=(10011.0111)24.X=0.1010,Y=-0.0111,求[X -Y]补,并判断是否有溢出?P11解:[X -Y]补=[X]补+[-Y]补[X]补=0.1010 [Y]补=1.1001 [-Y]补=0.01110.10100.0111 1.0001+-------------- 1 -------------- 0-------------- 0 -------------- 1-------------- 0 -------------- 0-------------- 0 -------------- 1 ------------- 1 ------------- 1 ------------- 1说明:当异号相减运算时,通过补码,减法运算转化为两个正数的加法运算,结果为负(符号位为1),表示运算结果溢出。

微机原理100道题答案

微机原理100道题答案

微机原理作业答案40.源程序如下:CMP AX,BXJNC L1JZ L2JNS L3JNO L4JMP L5设AX=74C3H,BX=95C3H,则程序最后将转到哪个标号处执行?试说明理由。

答:∵ 74C3H- 95C3HDF00H且有:CF=1, ZF=0, SF=1, OF=1∴程序将转到L5标号处执行。

41.设IBM PC微机内存中某个单元的物理地址是12345H,试完成下列不同的逻辑地址表示:(1)1234H:___H(2)____H:0345H答:(1)1234H:05H (2) 1200H:0345H42.假设某程序执行过程中,(SS)=0950H,(SP)=64H,试问该用户程序的堆栈底部物理地址是多少?答:(SS)*10H+(SP)-1=09563H43.设堆栈段寄存器(SS)=0E4BH,程序中设堆栈长度为200H个字节。

试计算出堆栈底部字单元物理地址,堆栈指针SP初始值(即堆栈中没有数据时)和SP初始值指向的物理地址。

答:物理地址为:0E6AFH-2, SP的初始值为200H,指向的物理地址为:0E6AFH.。

44.对于由8086CPU组成的系统,堆栈的位置如何确立?堆栈的首址(即:SS中的值)是不是栈底?为什么?答:8086系统中堆栈的位置由SS和SP初始化后确立:其中(SS)*16决定了堆栈段起始单元的地址,即堆栈段首址;(SS)*16+(SP初值)-1决定了堆栈段最后一个单元的地址,即栈底;(SS)*16+(SP现值)决定了堆栈段当前栈顶。

显然,堆栈首址并不是栈低。

一般来说,在堆栈所在的内存区内,栈底为高地址端。

堆栈初始化后,栈顶指向栈底+1单元的偏移地址。

当堆栈压入数据后,栈顶地址总是小于栈底地址(因为一次压入两个字节数据),位于低地址端。

45.设8255A的4个端口地址分别为0C0H、0C2H、0C4H和0C6H,要求用按位置位/复位控制字使PC6输出方波信号,试编程实现。

微机原理习题

微机原理习题

微机原理习题习题一、填空题1、十进制389对应的二进制数是110000101,压缩的BCD码是001110001001B,非压缩的BCD码是00000011 00001000 00001001,每位数字用字符表示时的ASCII码001100112、已知= 110011B,则= 101101B,=001101B,=100110B3、在微机中,一个浮点数由阶码和尾数两个部分构成。

4、某机器字长16位,其浮点数表示方法如下,阶码占5位,其中1位符号位:尾数占11位,其中1位符号位。

阶码用二进制补码表示尾数用二进制规格化原码表示,试写十进制数——0.3125 的浮点表示(二进制码) 1111111000000005、8086CPU上电复位后,CS=FFFEH, IP=0000H,DS=0000H ,SP=0000H.6、段地址为3900H,偏移地址为5200H,则物理地址为3E200H7、8086工作于最小模式下,CPU完成存储器读操作时,信号M/IO=1 ,RD=0,WR=1和DT/R=0 .若进行字节操作,单元地址为奇地址,则BHE=0和Ao=18、Inter 8086 CPU由执行单元和总线接口单元组成,其特点是并行操作。

9、在8086/8088CPU 中,一个最基本的总线刚期数由4个时钟周期 (T状态)组成,在T1状态,CPU往总线上发出地址信息。

10、当总线请求部件收到响应HLDA信号后,就获得了总线控制权:在其控制总线时期,HOLD 和HLDA都保持高电平,当总线占用部件用完总线后,HOLD变为低电平,于是CPU又重新控制总线,并使HLDA变为低电平。

11、8086CPU对于外部的可屏蔽中断请求和非屏蔽中断请求是分别通过的INTR和NMI引脚接收的。

12、设DS:75H存储单元开始存放11H、22H、33H,若要求占用的总线周期最少,则要2条指令才能将这3个数据读入到CPU中,这时占用2 个总线周期。

微机原理练习题

微机原理练习题

微机原理练习题一、1.在堆栈段中,存放栈顶的寄存器是()A. IP B SP C BX D BP2.计算机中用来存储程序、数据等信息的记忆装置是()A.控制器 B 运算器 C CPU D 存储器3.汇编语言中,存放下一条将要执行的指令地址的寄存器是()A. SP B AX C DI D IP4.TEST指令的功能与()指令类似。

A ANDB CMPC SUBD OR6、AH=0,AL=06H,BL=09H,执行指令ADD AL,BLAAA之后,其结果应是()。

A. AH=01,AL=05B. AH=1 AL=15C. AH=0 AL=0FHD. AH=0 AL=058. MOV SP,3210HPUSH AX执行上述指令序列后,SP寄存器的值是( )。

A、3211HB、320EHC、320FHD、3212H2、已知AX和BX中各存放一个无符号数,当AX大于等于BX时,转移到标号OK处,不能实现此转移的程序段是()A. CMP AX,BX JNC OKB. CMP AX,BX JNB OKC. CMP AX,BX JAE OKD. CMP BX,AX JB OK3、下面程序段符合汇编语言要求的是()A. DATA DB 10, 200 ,300B. DATA EQU 10DATA = DATA +20C. DATA DW 1050HMOV AL,DATAD. DATA DB 10B, 37Q,2AHMOV AL, DATA +14、若执行REP MOVSB 指令时,CX的值为0,则MOVSB指令执行的次数为()A. 0B. 1C. 65535D. 655361、十六进制数88H,可表示成下面几种形式,请找出错误的表示()。

A、无符号十进制数136B、带符号十进制数-120C、压缩型BCD码十进制数88D、8位二进制数-8的补码表示1、指令MOV AX,[SI][BP]的源操作数在哪一个逻辑段中()A. 数据段B. 附加段C. 代码段D. 堆栈段1. 下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( )E、AX,BX,CX,DXF、BX,BP,SI,DIG、SP,IP,BP,DXH、CS,DS,ES,SS2、已知标号DATA的定义如下: DATA DB 12H, 34H, 现想把数据1234H取入AX中,正确的程序段是()A. MOV AX, WORD PTR DATAB. MOV AX, DATAC. MOV AH, DATAMOV AL,DATA+1D. MOV AL,DATAMOV DATA+19. 编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( )。

微机原理习题集

微机原理习题集

微机原理习题集第⼀章绪论作业题⼀、选择题1、⼝的基本功能是(C)。

A.输⼊缓冲 B.输出锁存 C.输⼊缓冲,输出锁存D.编址使⽤2所谓“端⼝”是指⼀些可以由CPU读或写的( C )A.RAMB.ROMC.寄存器D.缓冲器⼆、填空题1、实质上,微处理器对外设的访问就是对外设的中的访问。

(接⼝,端⼝)2、请写出三种常见的微处理器:________、________、________。

(8086;80286;80386)3、计算机CPU与输⼊/输出设备之间交换的信息包括________、________和________三类信号。

(数据信息;地址信息;控制信息)4、I/O接⼝按使⽤的信号类型包括、。

(数字、模拟)5、所谓接⼝就是与的连接部件(电路),它是CPU与外界进⾏信息交换的(CPU ;外设;中间电路)6、开关量是指只有的量,可以⽤⼀个来表⽰。

(两个状态⼆进制)7、⼀个典型的I/O接⼝,⼀般具有、和三种端⼝。

(数据、控制;地址)三、简答题1、简述微处理器、微计算机及微计算机系统三个术语的内涵。

答:微处理器是微计算机系统的核⼼硬件部件,对系统的性能起决定性的影响。

微计算机包括微处理器、存储器、I/O接⼝电路及系统总线。

微计算机系统是在微计算机的基础上配上相应的外部设备和各种软件,形成⼀个完整的、独⽴的信息处理系统。

2、80X86微处理器有⼏代?各代的名称是什么?答:从体系结构上可分为3代:8080/8085:8位机。

8086/8088/80286:16位机。

80386/80486:32位机。

思考题1、简述微处理器的发展过程。

2、什么是接⼝?其主要组成是什么?3、接⼝有哪些功能?讨论题1、为什么要⽤I/O接⼝?2、简述接⼝的分类第⼆章8086微处理器作业题⼀、选择题1、8088CPU芯⽚的时序中,不加等待的⼀个总线周期需时钟周期数为()DA 1B 2C 3D 42、8088CPU上INTR信号为下⾯那种信号有效?()A上升沿下降沿⾼电平低电平3、8088CPU中的SP寄存器是⼀个()位的寄存器B8 16 20 244、⼯作在最⼩模式下,8088CPU芯⽚的时序中,将地址信号锁存的信号是()CDT/R DEN ALE AEN5、8086有两种⼯作⽅式,当8086处于最⼩⽅式时,MN/MX接( ) CA.+12VB.-12VC.+5VD.地6、存取时间是指( )BA.存储器的读出时间B.存储器进⾏连续读和写操作所允许的最短时间间隔C.存储器进⾏连续写操作所允许的最短时间间隔D.存储器进⾏连续读操作所允许的最短时间间隔⼆、判断题1、8086CPU在响应中断时,执⾏两个中断响应周期。

微机原理作业_学生2010_9_23

微机原理作业_学生2010_9_23

微机原理作业1.8086C P U由哪两部分组成?它们的主要功能是什么?2.微型计算机系统由、和等组成。

3.8086CPU中的指令队列可存储个字节的指令代码,当指令队列至少空出个字节时,BIU单元便自动将指令取到指令队列中;4.8086系统中,1MB的存储空间分成两个存储体:存储体和存储体,各为字节。

5.8086系统中存储器采用什么结构?用什么信号来选中存储体?6.在8086CPU中,指令指针寄存器是。

(A) BP (B) SP (C) IP (D) DI7.8086CPU中的SP寄存器的位数是。

(A) 8位(B) 16位(C) 20位(D) 24位8.8086CPU中指令指针寄存器(IP)中存放的是。

(A)指令(B)指令偏移地址(C)操作数(D)操作数偏移地址9.若当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址(最大),若此时入栈10个字节,SP内容是什么?若再出栈6个字节,SP为什么值?10.下列关于8086系统堆栈的论述中,正确的是。

(A) 堆栈的工作方式是“先进后出”,入栈时SP减小(B) 堆栈的工作方式是“先进后出”,入栈时SP增大(C) 堆栈的工作方式是“先进先出”,入栈时SP减小(D)堆栈的工作方式是“先进先出”,入栈时SP增大11.8086CPU对内存读/写操作,需两个总线周期的读/写操作是。

(A) 从偶地址读/写一个字节(B) 从奇地址读/写一个字节(C) 从偶地址读/写一个字(D) 从奇地址读/写一个字12.总线周期是指。

(A) 执行一条指令所需要的时间;(B) BIU完成一次读和一次写I/O端口操作所需时间之和;(C) BIU完成一次访问存储器或I/O端口操作所需要的时间;(D) BIU完成一次读和一次写存储器操作所需时间之和。

13.8086CPU通过RESET引脚上的触发信号来引起系统复位和启动,复位时代码段寄存器CS= ,指令指针IP= 。

重新启动后,从物理地址为的地方开始执行指令。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《微型计算机原理及应用》作业作业组别:第十一组
班级:10级机控一班
姓名:孙策
学号:100107010140
作业指导教师:李艳文
作业完成时间:2013年4月9日
目录
第一题 (1)
一、题目分析: (1)
二、寄存器及主存应用说明: (1)
三、程序框图: (1)
四、详细程序: (1)
五、程序调试情况: (2)
第二题 (2)
一、题目分析: (3)
二、寄存器及主存应用说明: (3)
三、程序框图: (3)
四、详细程序: (4)
五、程序调试情况: (5)
第三题 (6)
一、题目分析: (6)
二、寄存器及主存应用说明: (6)
三、程序框图: (7)
四、详细程序: (8)
五、程序调试情况: (9)
心得体会 (10)
第一题
44、内存有一个数x,把此数的前四位变0,后四位维持不变,送回同一单元。

一、题目分析:
令x=62H, 然后将x的偏移地址放入si,再把x与0fh相与,最后把结果送回偏移地址为si的地方。

预期结果为x=02h 存放在原来的位置。

二、寄存器及主存应用说明:
应用段寄存器ss、ds、cs通用寄存器ax、si
三、程序框图:
四、详细程序:
.model small
.stack
.data
x db 62h ;在数据段中定义一个字节型变量x
.code
start: mov ax,@data
mov ds,ax ;设置ds指向程序数据段的段地址
mov si,offset x ;获取x的偏移地址存放在si中
and byte ptr[si],0fh ;将x的前四位清零后四位不变
mov ax,4c00h
int 21h ;程序结束点,返回dos
end start
五、程序调试情况:
程序开始前:
程序结束后:
程序开始前x=62h,程序结束后x=02h,与预期结果相同。

第二题
12、假设在内存BUF为首地址的数据区中,有50个字节的无符号数,编一程序能够
找出数据块中的最大者,并把它送至MAX单元中。

一、题目分析:
首先在数据段定义以buf为首地址的50个字节无符号数,然后取第一个放在ax中与第二个相比较。

如果大于第二个,则用第一个和第三个相比较,否则,把第二个数放在ax中再与第三个数相比较。

以此类推,最后把ax中的数值放在MAX中。

预期结果, MAX=50=32h
二、寄存器及主存应用说明:
应用段寄存器ss、ds、cs通用寄存器ax、cx、si
三、程序框图:
四、详细程序:
.model small
.stack
.data
buf db 50, 1, 2, 3, 4, 5, 6,7,8,9,10;定义一个数组存放50个 db 21,22,23,24,25,26,27,26,29,30;字节无符号数,其中第 db 31,32,33,34,35,36,37,38,39,40;一个数据表示元素个数 db 41,42,43,44,45,46,47,48,49,50
MAX db ? ;定义变量MAX存放最大值
.code
start: mov ax ,@data
mov ds,ax ;设置ds指向程序数据段的段地址
lea si,buf ;取buf的偏移地址
mov cx,[si] ;取得元素个数
xor ch, ch ;将cx高位清零
dec cx ;得到循环次数
mov al,[si+1] ;取出第一个元素给al,al用于暂存最大值again: cmp al,[si+2] ;与下一个数据比较
ja next
mov al ,[si+2] ;al取得更大的数据next: inc si ;将偏移地址加1
loop again ;循环控制
mov MAX,al ;将最大值放在MAX中
mov ax,4c00h
int 21h ;程序结束点,返回dos
end start
五、程序调试情况:
程序开始前:
程序结束后:
由上图可知程序结束后变量MAX=32h=50与预期结果相同。

第三题
81、编写子程序。

用给定的字节(在AL中)填充一指定的内存区域。

该内存区域的
起始地址位于DI中,需填充的内存单元个数位于CX中。

主程序调用子程序实现上
述功能。

一、题目分析:
定义x=80用来当做给定的字节,定义buf为要填充的10个字节的内存区域。

将buf的的偏移地址放在di中,需要填充的内存单元个数放在cx中。

通过主程序调用子程序来实现将80填充到buf为首地址的10个字节的内存区域。

预期结果将在buf为首地址的10个字节内存区域出现10个50h。

二、寄存器及主存应用说明:
应用段寄存器ss、cs、ds通用寄存器ax、cx、di
三、程序框图:
四、详细程序:
.model small
.stack
.data
x db 80 ;指定字节变量用于填充指定的内存字节区域buf db 10 dup(?) ;指定内存区域
count equ $-buf ;取指定内存字节单元个数
.code
start: mov ax,@data
mov ds,ax ;设置ds指向程序数据段的段地址
mov al,x
lea di,buf ;获取buf的偏移地址
mov cx,count ;获取循环次数
call htoasc ;调用子程序
mov ax,4c00h ;程序结束点,返回dos
int 21h
htoasc proc ;过程定义,过程名为htoasc
push ax ;顺序入栈,保护寄存器中的内容
push cx
push di
again: mov [di],al ;将al中的数据放到偏移地址为di的存储单元中
inc di ;di加1
loop again ;循环控制
pop di
pop cx
pop ax ;恢复被改变的寄存器内容 ret ;子程序返回
htoasc endp ;过程结束
end start
五、程序调试情况:
程序开始前:
程序结束后:
由上图可知,程序开始前,以buf为首地址的10个字节单元中的内容都为00h,程序结束后,以buf为首地址的10个字节单元的内容都为50h与预期结果相同。

心得体会
通过对这几道小题的编程,我深刻的感觉到“麻雀虽小,五脏俱全”的含义,由一开始的题目分析,到后来的程序框图、程序调试,每一步都很重要,都不能掉以轻心,特别是程序调试的时候,丢掉一个逗号都可以导致你的程序不能运行。

经过这次编程,我感受到理论联系实际的重要性,平常在课本上学的东西貌似很熟,但是到啦真正使用的时候却模模糊糊,这就要求我们多动手,多思考,尽可能把学到的东西运用到生活中去,多与实际联系起来。

刚开始老师留这作业的时候,很发愁,不知道怎么做,也不想去做,但是真正做完回头看看,这作业也不是那么枯燥,能把你课本学到的东西联系起来,加深你对这门课的理解,不用去凭空想像啦。

这说明了一个道理“眼是孬包,手是好汉”生活中也是这样,往往吓倒我们的不是困难,而是我们自己,在我们遇到困难挫折时候,我们要尝试着去解决,而不是逃避,可能就这一小步就会为你打开一扇窗,而窗外就是另一番风景。

相关文档
最新文档