青岛科技大学信息工程微机原理习题资料.pdf

上传人:白大夫 文档编号:5446382 上传时间:2020-05-12 格式:PDF 页数:14 大小:157.26KB
返回 下载 相关 举报
青岛科技大学信息工程微机原理习题资料.pdf_第1页
第1页 / 共14页
青岛科技大学信息工程微机原理习题资料.pdf_第2页
第2页 / 共14页
青岛科技大学信息工程微机原理习题资料.pdf_第3页
第3页 / 共14页
青岛科技大学信息工程微机原理习题资料.pdf_第4页
第4页 / 共14页
青岛科技大学信息工程微机原理习题资料.pdf_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《青岛科技大学信息工程微机原理习题资料.pdf》由会员分享,可在线阅读,更多相关《青岛科技大学信息工程微机原理习题资料.pdf(14页珍藏版)》请在三一文库上搜索。

1、1 一、填空题 1、十进制数25 转换为二进制数是11001B ,转换为八进制数是31O ,转换为十六进制数是 19H 。 2、十进制数 -68 的原码是11000100 ,反码是10111011,补码是10111100 。 (用八位二进制编 码表示)。 3、十进制数208.625 转换成 16 进制数为 D0.AH 。 4、十进制负数-38 原码是10100110 ,反码是11011001 ,补码是11011010。 (用八位二进制编 码表示)。 5、十进制数42.625转换为二进制数是 101010.101B ,转换为八进制数是 52.5O ,转换为 十六进制数是 2A.AH 。 7、计算

2、机存储信息的最小单位是二进制的位,1 个字节等于8 个二进制位, 1KB 等于 1024 个字 节。 8、三态输出电路可以有3 种工作状态,即0、1 和高阻态。 9、程序计数器用于存储计算机下一条要执行的指令的地址,可以从0 开始计数 (每次加 1 或加一个固 定的数 ),以支持程序的顺序执行;也可以将外部数据装入其中,以支持程序跳转操作。 10、 CPU 的控制器通常由三个部分组成,即环形计数器、指令译码器和控制矩阵。 11、 8086CPU 的数据总线是16 位的, 8088CPU 的数据总线是8 位的。 12、 8086CPU 的指令队列为 6 个字节, 8088CPU 的指令队列为4

3、个字节。 13、 8086CPU 的 4 个段地址寄存器分别是CS、DS、 ES、SS。 14、 8086CPU 从功能上可分为两部分,即总线接口部件BIU 和执行部件EU。 15、 8086/8088CPU 设有 _6_个状态标志位,_3_个控制标志位;当执行比较指令时,如果运算结 果为零,则标志位_ZF_置 1;如果运算结果的最高位为1,则标志位 _SF_置 1。 16、存储器是计算机中用于存储程序和数据的装置。 17、 n 位地址码可以表示 2 n 个地址。 18、8086/8088 系统中存储器按字节编址,可寻址的存储器空间为1MB 。 8086/8088 系统把 存储空间分成若干个逻

4、辑段,每个逻辑段容量64KB 。16 个字节的存储空间称为1 节。 19、8086 的地址有20 位, 那么它的可寻址空间为 1024 K,其中每个段的最大长度为 64 K。 20、 m 个存储单元、每个存储单元n 位的存储器通常表示为mn 的存储器。例如:168 存储 器表示有16 个存储单元,每个存储单元8 位,它有4 条地址线,8 条数据线。 21、逻辑地址由段基址和偏移地址组成,将逻辑地址转换为物理地址的公式是物理地 址=段基址 16+偏移地址。 22、逻辑地址为5678h:2345h,其物理地址是58AC5H 。 23、 8086 系统中,一个总线周期至少包括_4_个时钟周期。 24

5、、 8086/8088CPU 有最大和最小两种工作模式。 25、 8086 复位后如下寄存器的内容为:CS= FFFF H,IP= 0000 H。 26、 8086/8088 中,从产生中断的方法来分,中断可以分为两类:一类是硬件中断,另一类是软 件中断。 27、 8086/8088 的硬件中断可以分为两类:一类叫非屏蔽中断,另一类叫可屏蔽中断。 28、中断向量是中断服务程序的入口地址, 每一个中断向量占4 个存储单元其中前两个单元存放中 断子程序入口地址的偏移量(IP),后两个单元存放中断子程序入口地址的_段地址( CS) 。 29、 8086CPU 的中断类型码与中断向量存放地址之间的关系

6、为:中断向量的段地址CS=0000H , 中断向量的偏移量IP=中断类型码 *4。 30、 8086 微机系统中的一个中断向量占4 个存储单元,假定某中断对应的中断向量存放在 0000:002C H ;那么该中断向量对应的中断类型号为 0B H ,若该向量对应的中断处理子程序放 在 0080:0402H开始的内存区域中,则按照地址由低到高的顺序写出从内存0002C处起始的存储 单元的内容为 02H 、 04H 、 80H 、 00H 。 31、 指令是让计算机完成某种操作的命令,指令的集合称作指令系统。 2 32、计算机能够直接识别的二进制形式指令称为机器指令,用助记符表示的指令称为汇编 指令

7、。 33、 8086 寻址方式中,指令MOV AX ,BP 和指令 MOV AX ,BX 的源操作数寻址方式中,源 操作数默认使用的段寄存器分别为SS 和DS 。 34、 DEBUG 调试程序中,用于显示当前寄存器内容的指令是_r_。 35、系统功能调用分以下三个步骤:(1)传送入口参数到指定寄存器中;( 2)功能号送入AH寄 存器中;(3)INT 21H 。 36、 在微机系统中, 可采用的输入/输出控制方式一般有4种: 程序控制方式、 中断控制方式、 直接存储器存取方式、 输入 /输出处理机方式。 37、 8255A 芯片内部包含3 个8 位的输入 /输出端口。各端口可有3 种基本工作方式

8、。 38、可编程并行接口芯片8255A 有两种类型的控制字,分别为工作方式控制字和置位/复位控制字。 二、选择题 1、与十进制数56 等值的二进制数是 A )。 A)111000 B)111001 C) 101111 D)110110 2、十进制数36.875 转换成二进制数是 B) 。 A)110100.01 B)100100.111 C)100110.11 D)100101.101 3、十进制数59 转换成八进制数是 A )。 A)73Q B)37Q C)59Q D)112Q 4、将十进制小数0.6875 转换成八进制小数是 C) 。 A)0.045Q B)0.054Q C)0.54Q D

9、)0.45Q 5、与十进制数58.75 等值的十六进制数是 B) 。 A)A3.CH B)3A.CH C)3A.23H D)C.3AH 6、二进制数10101 转换成十进制数是 C )。 A)25 B) 23 C)21 D) 22 7、十进制负数-61 的八位二进制原码是 B)。 A)10101111 B)10111101 C) 10101011 D)00110101 8、十进制正数38 的八位二进制补码是 D )。 A)00011001 B)10100110 C) 10011001 D)00100110 9、十进制负数-38 的八位二进制补码是 D )。 A)01011011 B) 1010

10、0110 C ) 10011001 D)11011010 10、有一个八位二进制数补码是11111101,其相应的十进制数是 A )。 A)-3 B) -2 C)509 D)253 11、补码 01010101 表示的真值为(D) (A) 93 (B) 43 (C) 42 (D) 85 12、补码 10000000 表示的真值为(C)。 (A) 0 (B) 0 (C) 128 (D) 128 13、 8 位二进制补码表示的整数数据范围是(A)。 (A) -128127 (B) -127127 (C) -128128 (D) -127128 14、 8 位二进制原码表示的整数数据范围是 B 。

11、(A) -128 127 (B) -127+127 (C) -128 +128 (D) -127+128 15、 CPU指的是 (B) 。 (A) 控制器 (B)运算器和控制器 (C) 运算器、控制器和主存 (D)运算器 16、环形计数器是组成 B 的一部分。 (A) 总线接口单元 (B)控制部件 (C) 算术逻辑单元 (D)运算器 17、 8086 的工作方式为 A 。 (A) 实地址方式(B)保护地址方式(C)虚拟 8086 方式(D)实地址和保护地址方式 3 18、 8086 的第 25 引脚 ALE的作用是 A 。 (A) 最小工作模式下地址锁存允许(B) 最大工作模式下地址锁存允许

12、(C) 最小工作模式下数据允许输出(D) 最大工作模式下数据允许输出 19、标志寄存器中的奇偶标志PF=1表示的是 (A) 。 (A) 运算结果低8 位中所含1 的个数为偶数(B) 运算结果低8 位中所含1 的个数为奇数 (C) 运算结果16 位中所含 1 的个数为偶数 (D) 运算结果16 位中所含1 的个数为奇数 21、 8086CPU 的总线周期中,在T3 状态的结束时会检测_ D _信号,如果该信号无效,会在 T3 状态之后插入等待状态Tw。 A HLDA BHOLD CINTR DREADY 22、指令 MOV AL,16H中,源操作数采用的寻址方式是: A) 。 A)立即数寻址 B

13、)寄存器寻址 C)直接寻址 D)寄存器间接寻址 23、指令 MOV AL,BL中,源操作数采用的寻址方式是: B) 。 A)立即数寻址 B)寄存器寻址 C)直接寻址 D)寄存器间接寻址 24、指令 MOV AX,1070H中,源操作数采用的寻址方式是: C) 。 A)立即数寻址 B)寄存器寻址 C)直接寻址 D)寄存器间接寻址 25、指令 MOV AX,BX中,源操作数采用的寻址方式是: D) 。 A)立即数寻址 B)寄存器寻址 C)直接寻址 D)寄存器间接寻址 26、设 DS=2000H ,则指令MOV AX ,1050H 的源操作数的物理地址是 (A) 。 (A)21050H (B)200

14、0H (C)1050H (D)3050H 27、使用直接寻址方式中,操作数在 C 中。 A.通用寄存器 B. 堆栈 C. 存储器 D. 段寄存器 28、寄存器间接寻址方式中,操作数在 (C) 中。 (A) 通用寄存器 (B)堆栈 (C)主存单元 (D)段寄存器 29、 MOV AX ,BX+SI 的源操作数的物理地址是 (A) 。 (A)16 (DS)+(BX)+(SI) (B)16(ES)+(BX)+(SI) (C)16 (SS)+(BX)+(SI) (D)16(CS)+(BX)+(SI) 30、直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为(C)。 (A) 直接、立即、间接

15、(B)直接、间接、立即 (C) 立即、直接、间接 (D)不一定 31、用汇编语言编写的程序需要经过(D)翻译成机器语言后,才能在计算机中执行。 (A) 编译程序 (B)解释程序 (C)操作系统 (D)汇编程序 32、假定 DS=1000H , AX=2000H ,1234H=30H ,1235H=40H 当执行完MOV AX ,1234H 指令后, AX的值为 A 。 (A) 4030H (B) 3040H (C) 1234H (D) 2000H 33、假定DS=1000H ,AX=2000H ,1234H=3000H ,当执行完LEA AX ,1234H 指令后, AX 的值为(D),执行

16、MOV AX ,1234H 后, AX 的值为(C)。 (A) 1000H (B) 2000H (C) 3000H (D) 1234H 34、当执行完下列指令序列后,标志位CF 和 SF 的值为。 MOV AL ,0B9H ADD AL ,24H (A) 0, 0 (B) 0,1 (C) 1, 0 (D) 1,1 35、堆栈的工作方式是 A 。 A.先进后出B.后进后出C.先进先出D.无要求 36、 8086/8088 CPU 的 I/O 指令采用间接寻址时,可用的间址寄存器是(B) 。 (A) BX (B) DX (C) SI (D) DI 37、 INC 指令执行后,不变化的标志位是:_B

17、_。 A. ZF B. CF C. OF D. PF 38、某条指令可以完成对指令中给出的操作数取补码的功能,这条指令为 A 。 4 (A) NEG (B)XCHG (C) XLAT (D) TEST 39、 ROR 指令的意义是 A 。 (A) 不带 CF的循环右移 (B) 带 CF的循环右移 (C) 算术右移 (D) 逻辑右移 40、逻辑移位指令SHL用于(C)。 (A) 带符号数乘以2 (B)带符号数除以2 (C) 无符号数乘以2 (D)无符号数除以2 41、当 AB 时转移的条件转移指令为(A、B 为无符号数)(A) 。 (A) JA (B) JAE (C) JG (D) JGE 42

18、、 IRET指令的功能为 A 。 (A) 中断返回 (B) 有符号数小于时转移 (C) 溢出时中断 (D) 过程返回 43、调试程序DEBUG 中的指令 U的含义是 D 。 (A) 从指定地址显示内容(B) 从指定地址执行程序(C) 读并显示输入的字节(D) 反汇编 44、把若干个模块连接起来成为可执行文件的系统程序是 B 。 A. 汇编程序 B.连接程序 C. 机器语言程序 D.源代码程序 45、下列伪指令中,定义字节变量的是A 。 A DB BDW CDD DDT 46、使用 DOS 功能调用时,功能号应放在 A 寄存器中。 A. AH B. BL C. AX D. DL 47、 8255

19、A是一个 (A) 芯片。 (A) 可编程并行通信接口 (B)ALU (C)可编程串行通信接口 (D)中断控制 三、简答题 1、 写出半加器的真值表, 求出逻辑表达式并画出其电路图。 答:设 A、B表示半加器的两个输入端,S表示和, C表示进位,则半加器的真值表如下: A B C S 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 根据半加器的真值表,可以得出其逻辑表达式如下: C=A与 B S=A异或 B 由此得到半加器的电路图如下: 20 位的地址加法器; 6 字节的指令队列。 6、简述 8086CPU执行部件EU的功能和组成。 答:执行部件EU的功能就是负责指令的执行,对指

20、令进行译码,并利用内部的寄存器和ALU对 数据进行所需的处理。 执行部件EU有下列部分组成: 4 个通用寄存器,即AX BX CX DX; 4 个专用寄存器,即基数指针寄存器BP 、堆栈指针寄存器SP 、源变址寄存器SI、目的变址寄存 器 DI; 标志寄存器; 算术逻辑单元。 7、解释中断类型码、中断向量、中断向量表。 答:中断类型码:8086/8088 的中断系统为每个中断分配一个编号,这个编号称为中断类型码。 中断向量:中断向量是中断处理子程序的入口地址,每个中断类型对应一个中断向量。 1 位全加器真值表: a b c i s c o 1 位 全加器逻辑表达式: S= abc i+abci

21、+abci+abci=a b ci Co=abc i+abci+abci+abci=ab+aci+bci 1 位全加器电路图: 11111 01011 01101 10001 01110 10010 10100 00000 sc o c i ba 6 中断向量表:在内存分配一段区域用来存放每个中断类型的中断向量,这些中断向量存放在 一起形成一张表,称为中断向量表。 8、试说明可屏蔽中断和非屏蔽中断的区别和联系。 可屏蔽中断和不可屏蔽中断都属于外部中断,是由外部中断源引起的;但它们也有区别:可 屏蔽中断是通过CPU的 INTR 引脚引入,当中断标志IF 1时允许中断,当IF=0 时禁止中断,不

22、可屏蔽中断是由NMI引脚引入,不受IF 标志的影响。 9、简述可屏蔽中断的响应过程。 答: (1)从数据总线上读取中断类型码,将其存入内部暂存器。 (2)将标志寄存器的值推入堆栈。 (3)把标志寄存器的中断允许标志IF 和单步标志TF清零。 (4)将断点保护到堆栈中。 (5)根据前面得到的中断类型码,到内存的中断向量表中找到中断向量,再根据中断向量转入 相应的中断处理子程序。 10、简述中断处理程序的结构模式。 答:所有的中断处理子程序都有如下的结构模式: (1) 中断处理子程序的开始必须通过一系列推入堆栈指令来进一步保护中断时的现场,即保护 CPU各寄存器的值( 当然有时未必需要保存所有寄存

23、器的值) 。 (2) 在一般情况下,应该用指令设置中断允许标志IF 来开放中断,以允许级别较高的中断请求 进入。 (3) 中断处理的具体内容是中断处理子程序的主要部分。 (4) 中断处理子程序的尾部则是一系列弹出堆栈指令,使得各寄存器恢复进入中断处理时的值。 (5) 最后是中断返回指令,中断返回指令的执行会使堆栈中保存的断点值和标志值分别装入IP, CS和标志寄存器。 11、什么叫寻址方式?8086 指令系统有哪几种寻址方式? 指令的寻址方式是指确定本条指令的操作数地址及下一条要执行的指令地址的方法。 8086 指令系统有4 种寻址方式:立即数寻址、寄存器寻址、直接寻址和寄存器间接寻址。 12

24、、何谓寄存器寻址方式?何谓寄存器间接寻址方式?二者的区别是什么? 答:如果操作数就在CPU的内部寄存器中,那么在指令中可用寄存器名指出操作数的位置。这种 寻址方式就叫寄存器寻址方式。 采用寄存器间接寻址方式时,操作数一定在存储器中,存储单元的有效地址由寄存器指出, 这些寄存器可以为BX ,BP ,SI 和 DI 之一,即有效地址等于其中某一个寄存器的值( 或加上一个 位移量 ) 。 二者的区别在于:寄存器寻址方式时指令指出的寄存器中存放的就是操作数,而寄存器间接 寻址方式时指令指出的寄存器中存放的是操作数的地址,而不是操作数,真正的操作数存放在内 存中。 13、简述汇编语言指令的语句格式并解释

25、各部分意义。 86 系列汇编语言指令语句格式如下图,图中由前向后的箭头表示是可选项,由后向前的箭头 表示是重复项,圆头方框表示是语句中的关键字。 标号是给该指令所在地址取的名字,必须后跟冒号 “ :” ,它可以缺省, 是可供选择的标识符。 指令助记符是指令名称的代表符号,它是指令语句中的关键字,不可缺省,表示本指令的操 作类型,如传送、运算、移位、跳转等操作。如MOV- 传送、 ADD-加法、 SUB-减法等等。 操作数是参加本指令运算的数据,有些指令不需要操作数,可以缺省;有些指令需要两个操 7 作数,这时必须用逗号( ,) 将两个操作数分开;有些操作数可以用表达式来表示。操作数可以是 一个

26、具体的数值,可以是存放数据的寄存器名称,或指明数据在主存位置的存储器地址。 注释部分是可选项,注释必须用分号( ;) 开头,注释用来对指令功能加以说明,汇编程序不对它 做任何处理。 14、什么叫循环程序?它有什么优点?简述循环程序的结构。 答: 循环程序是强制CPU重复执行某一指令系列( 程序段 ) 的一种程序结构形式,凡是要重复执行 的程序段都可以按循环结构设计。 循环结构程序简化了程序清单书写形式,而且减少了占内存空间。 循环程序一般由4 部分组成:初始化、循环体、循环控制和循环结束处理,其中各部分的内 容如下: (1) 初始化:它完成建立循环次数计数器,设定变量和存放数据的内存地址指针(

27、 常用间址方式) 的初值,装入暂存单元的初值等; (2) 循环体:这是程序的处理部分; (3) 循环控制:它包括修改变量和修改指针,为下一次循环做准备,以及修改循环计数器( 计数 器减 1) ,判断循环次数到了没有。到了则结束循环;不到,则继续循环( 即转移回去,再执行一 次循环体 )。 (4) 结束处理:它主要用来分析和存放程序的结果。 15、简述用汇编语言进行程序设计的步骤。 汇编语言程序设计步骤: (1)分析问题:已知条件、要解决的问题、功能/ 性能要求等。 (2)建立数学模型:把问题数学化、公式化,便于计算机处理。 (3)确定算法:简单、速度快、精度高、代码量小、编程容易。 (4)绘制

28、程序流程图:用箭头、框图、菱形图等表示程序结构。 (5)内存空间分配:为程序或数据分配内存空间。 (6)编制程序与静态检查:程序结构层次简单、清楚、易懂。 (7)程序调试:利用调试软件DEBUG 进行调试 。 16、简述汇编语言源程序的基本格式。 DATA SEGMENT 存放数据项的数据段 DATA ENDS EXTRA SEGMENT 存放数据项的附加段 EXTRA ENDS STACK1 SEGMENT PARA STACK 作堆栈用的堆栈段 STACK1 ENDS COSEG SEGMENT ASSUME CS:COSEG,DS:DATA,SS:STACK1,ES:EXTRA BEIN

29、G:MOV AX,DATA MOV DS,AX 存放指令序列 COSEG ENDS END BEING 四 程序分析题 8 1、依次执行下述指令序列,请在空白处填上当左边指令执行完时该寄存器的值。 MOV AL,0C5H MOV BH,5CH MOV CH,29H AND AL ,BH ;AL= 44 H OR BH,CH ;BH= 7D H XOR AL ,AL ;AL= 00 H AND CH,0FH ;CH= 09 H MOV CL,03 MOV AL,0B7H MOV BL,,AL SHL AL ,CL ;AL= 0B8 H ROL BL,CL ;BL= 0BD H 2、当下列程序执行

30、完后, AX 、BX、CX、DX 四个寄存器的内容分别是什么? CSEG SEGMENT ASSUME CS:CSEG,DS:CSEG,SS:CSEG ORG 100H BEGIN:MOV AX ,01 MOV BX,02 MOV DX,03 MOV CX,04 L20:INC AX ADD BX,AX SHR DX,1 LOOP L20 RET CSEG ENDS END BEGIN 答:AX=0005H,BX=0010H,CX=0000H,DX=0000H 3、阅读下面的程序,指出该程序完成的功能。 DATA SEGMENT STR1 DB ,THIS IS A STRING1? STR2

31、 DB ,THIS IS A STRING2? COUNT DW STR2-STR1 RESULT DB ? DATA ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DATA,ES:DATA START:MOV AX ,DATA MOV DS,AX MOV ES,AX LEA SI,STR1 LEA DI,STR2 MOV CX,COUNT CLD REPZ CMPSB 9 JNZ UNMAT MOV AL ,0 JMP OUTPT UNMAT :MOV AL,0FFH OUTPT:MOV RESULT,AL HLT CSEG ENDS END START 答:该程序

32、用来比较两个数据串STR1 和 STR2是否相等,若相等,则将RESULT 单 元清 0,否则置全 1。 1、分析下面的程序段所实现的功能: SALAL ,1 ; 将 AL 中数左移 1 位,得 2X MOVBL,AL; 2X 保存在 BL 中 MOVCL,2; 移位次数置入 CL 中 SHLAL ,CL; 2X 左移 2 位,得 8X ADDAL,BL; 2X 加上 8X,所以 AL 中为 10X 解:将保存在 AL 中的数乘以 10。 2、分析下面的程序段所实现的功能: MOV CL,4 ;将计数值送 CL SHL BL,CL ; BL 左移 4 位 AND AL,0FH ;清零 AL 高

33、 4 位 OR AL ,BL ;将两个字节的低4 位合并为一个新字节。 解:将两个字节的低4 位合并为一个新字节。 3、分析下面的程序段所实现的功能: MOV CX,8 MOV SI,1000H L1: INC BYTE PTRSI INC SI LOOP L1 解:将有效地址为 1000H1007H的 8 个内存单元的内容,逐个加1,结果仍然存 放在原来的地址。 4、 当下列程序执行完后,AL、BX 、DI、 DS四个寄存器的内容分别是什么? 假定存储器从2000H开始的内容分别为:2000H=04H,2001H=02H,2003H=06H, 2004H=01H,2005H=08H,2006

34、H=07H MOV BX ,2000H MOV AL,03H XLAT LDS DI, 2000H AL=06H BX=2000H DI=0204H DS=0106H 5、 阅读下面的程序,指出该程序完成的功能。 START : IN AL ,71H CLC CMP AL,10 JC LP1 CMP AL,20 JC LP2 MOV BL,0FFH LP3:OUT 73H,BL 10 HLT LP1: MOV BL,00 JMP LP3 LP2: MOV BL,88H JMP LP3 完成功能如下:从外设71H中取一个数,判断其值是否在1020 之间,如果是则送88H给外设 73H,如果小于1

35、0 则送 00 给外设 73H,如果大于20,则送 0FFH给外设 73H。 1.有两个 4 字节的无符号数相加,这两个数分别存放在2000H 和 3000H 开始的存储单元中, 低位在前,高位在后,要求进行运算后,得到的和存储在2000H 开始的单元内,请完成以下 程序段: CLC MOV SI, 2000H ;取第一个数的首地址 MOV AX, SI ;将第一个数的低16 位取道 AX MOV DI, 3000H ;取第二个数的首地址 _ ;第一个数和第二个数的低16 位相加 MOV SI ,AX ;低 16 位相加的结果送到2000H 和 2001H 单元 MOV AX, SI+2 ;取

36、第一个数的高16 位 _ ;两个数的高16 位连同进位位相加 _ ;高 16 位相加的结果送到2002H 和 2003H 2.试完成程序序列,把AL 的高 4 位与其低4 位进行交换。 3.已知堆栈指针SP的初值为2000H,AX=3000H ,BX=5000H ,现连续执行下列3 条指令, PUSH AX PUSH BX POP AX 执行后, SP=_, AX=_, BX=_。 4.设有指令序列 DATA_B 12H,34H DATA_W DW ,AB?, ,CD?,EF?,GH? MOV BX ,DA_B+3 执行上述指令后,(BX)=_ 5.某程序数据段中有两个数据字3344H 和 5

37、A6BH ,若已知DS=5AA0H ,其偏移地址分别为 245AH 和 3245H,试画出它们在储存器中的存放情况,并标出各单元的逻辑地址。 2、已知 (DS)=3000H, (BX)=1000H, (SI)=0020H, 内存分配如图所示 LEA DI, BX SI0300H MOV AX , DI LDS SI , BXDI SUB AX ,1234H 连续执行上述指令后, (DS)=_ _,(SI)= ,(BX)= , (DI)= _ ,(AX)= _ 4、阅读下面的程序,分析该程序的功能是什么? MOV BX,5 L1:MOV CX,BX L2:MOV DL,* MOV AH,2 IN

38、T 21H 11 LOOP l2 MOV DL,0DH MOV AH,2 INT 21H MOV DL,0AH MOV AH,2 INT 21H DEC BX JNZ l1 2. 设( AX )=9ABCH ,(DX)=8765H PUSH AX PUSH DX POP AX POP DX 上述 4 条指令执行后, (AX )=_, (DX )=_。 五、应用题 假定 8255A 的 A 端口、B 端口、C 端口和控制端口的地址依次为0180H、0181H、0182H、0183H。 8255A 芯片的外部引脚图如下: 其中: D7D0 是 8 位数据线, PA0PA7是 A 端口的 8 位数据

39、, PB0PB7是 B 端口的 8 位数据, PC0 PC7是 C 端口的 8 位数据, CE 是 8255A 的片选使能信号,WR 是 8255A 的写控制信号, RD 是 8255A 的读控制信号,A1 A0 是最低两位地址信号。微机原理实验箱可以提供的其它资源 为:总线接口模块输出的写控制信号IOWR 、读控制信号IORD ,总线接口模块的数据线(IOD0 IOD7)、地址线( IOA0IOA1),总线接口模块输出的片选使能信号IOY0,8 个发光二极管L1 L8(假定驱动电平为0 时发光二极管亮)。 8255A 工作方式控制字格式: 1 D6 D5 D4 D3 D2 D1 D0 特 征

40、 位 A 组方式 00=方式 0 01=方式 1 1X= 方式 2 A 口 0=输出 1=输入 C 口高 4 位 0=输出 1=输入 B 组方式 0=方式 0 1=方式 1 B 口 0=输出 1=输入 C 口低 4 位 0=输出 1=输入 1、设计实验方案,实现下列功能:利用微机原理实验箱上的8255A 芯片,实现8 个发光二极管 12 的流水灯功能,每次只有2 个灯亮,切换时间为1 秒,共轮换32 遍(即每个灯亮32 次) 。要求 说明硬件的连线方法并给出相应的汇编语言源程序。假定已经有子程序DELAY 用于延时1 秒。 解: (1)实验连线: 将 8255A 芯片的 WR 、RD分别连到总

41、线接口模块的IOWR 、 IORD 。 将 8255A 芯片的数据线(D0D7 )、地址线( A0A1)分别连到总线接口模块的数据线 (IOD0 IOD7)、地址线(IOA0IOA1)。 将 8255A 芯片的选通线CE连到总线接口模块的IOY0。 将 8255A 芯片的 PA0PA7连到发光二极管的L1L8。 (2)汇编源程序: P8255_A EQU 0180H P8255_MODE EQU 0183H MY_STACK SEGMENT PARA STACK DB 100 DUP(?) MY_STACK ENDS MY_DATA SEGMENT PARA DATA MY_DATA ENDS

42、 MY_CODE SEGMENT PARA CODE MY_PROC PROC FAR ASSUME CS:MY_CODE, DS:MY_DATA, SS:MY_STACK MAIN: MOV AX,MY_DA TA MOV DS,AX MOV DX,P8255_MODE MOV AL,80H OUT DX,AL MOV DX,P8255_A MOV AL,3FH MOV CX,20H B: MOV BX,4 A: OUT DX,AL CALL DELAY PUSH CX MOV CL,2 ROR AL,CL POP CX DEC BX JNZ A LOOP B MOV AH,4CH INT

43、21H MY_PROC ENDP 13 MY_CODE ENDS END MAIN 3、利用微机原理实验箱上的8255A 芯片,控制8 个发光二极管的显示功能,要求如下:通过端 口 B的读入开关1 的状态,若开关闭合,通过端口A 点亮 1、2、3、4 灯,若开关断开,通过端 口 A点亮 5、6、 7、8 灯。 2、开关和灯的排列方式都为: 1 2 3 4 5 6 7 8(对应端口数据线由低位到高位排列) 假定开关闭合时读入的值为1,开关断开时读入的值为0;端口输出为0 时灯亮。 MY_STACK SEGMENT PARA STACK DB 100 DUP(?) MY_STACK ENDS MY

44、_DATA SEGMENT PARA DATA P8255_A DW 0180H P8255_B DW 0181H P8255_C DW 0182H P8255_MODE DW 0183H MY_DATA ENDS MY_CODE SEGMENT PARA CODE ASSUME CS:MY_CODE, DS:MY_DATA, SS:MY_STACK START: MOV AX,MY_DATA MOV DS,AX MOV DX,P8255_MODE ; 设置 8255 控制字 B口输入, A口输出 MOV AL,82H OUT DX,AL MOV DX,P8255_B ; 读取 B口状态 IN

45、 AL,DX TEST AL,01H JZ DEAL1 MOV DX,P8255_A ; 输出 MOV AL,0FH OUT DX,AL JMP EXIT DEAL1: MOV DX,P8255_A MOV AL,0F0H OUT DX,AL EXIT: MOV AH,4CH INT 21H MY_CODE ENDS END START 3.设计实验方案,实现下列功能: 利用微机原理实验箱上的8255A 芯片,实现 8 个发 光二极管的流水灯功能,每次只有一个灯亮,切换时间为1 秒,共轮换 16 遍(即每 个灯亮 16次) 。要求说明硬件的连线方法并给出相应的汇编语言源程序。假定已经有 子程序

46、 DELAY 用于延时 1 秒。 解: (1)实验连线 将 8255A 芯片的 WR 、RD分别连到总线接口模块的IOWR 、IORD 。 14 将 8255A 芯片的数据线( D0 D7 )、地址线( A0A1)分别连到总线接口模 块的数据线( IOD0 IOD7 )、地址线( IOA0IOA1)。 将 8255A 芯片的选通线 CE连到总线接口模块的IOY0。 将 8255A 芯片的 PA0 PA7连到发光二极管的L1L8。 (2)汇编源程序: P8255_A EQU 0180H P8255_MODE EQU 0183H MY_STACK SEGMENT PARA STACK DB 100

47、 DUP(?) MY_STACK ENDS MY_DATA SEGMENT PARA DATA MY_DATA ENDS MY_CODE SEGMENT PARA CODE MY_PROC PROC FAR ASSUME CS:MY_CODE, DS:MY_DATA, SS:MY_STACK MAIN: MOV AX,MY_DATA MOV DS,AX MOV DX,P8255_MODE MOV AL,80H OUT DX,AL MOV DX,P8255_A MOV AL,7FH MOV CX,10H B: MOV BX,8 A: OUT DX,AL CALL DELAY ROR AL,1 DEC BX JNZ A LOOP B MOV AH,4CH INT 21H MY_PROC ENDP MY_CODE ENDS END MAIN 4、用 8255 的 PA口控制 8 个指示灯,前 4 个指示灯与后 4 个指示灯交替亮灭(频率 可自己确定)。说明硬件的连线方法并给出相应的汇编语言源程序。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1