微机原理作业答案 (2)
- 格式:doc
- 大小:322.50 KB
- 文档页数:20
微机原理课后习题参考答案第1部分微型计算机基础知识1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?【解】微处理器:指计算机内部对数据进行处理并对处理过程进行控制的部件,伴随着大规模集成电路技术的迅速发展,芯片集成密度越来越高,CPU可以集成在一个半导体芯片上,这种具有中央处理器功能的大规模集成电路器件,被统称为“微处理器”。
微型计算机:简称“微型机”、“微机”,也称“微电脑”。
由大规模集成电路组成的、体积较小的电子计算机。
由微处理机(核心)、存储片、输入和输出片、系统总线等组成。
特点是体积小、灵活性大、价格便宜、使用方便。
微型计算机系统:简称“微机系统”。
由微型计算机、显示器、输入输出设备、电源及控制面板等组成的计算机系统。
配有操作系统、高级语言和多种工具性软件等。
1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能?【解】CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。
1.3 微型计算机采用总线结构有什么优点?【解】①简化了系统结构,便于系统设计制造;②大大减少了连线数目,便于布线,减小体积,提高系统的可靠性;③便于接口设计,所有与总线连接的设备均采用类似的接口;④便于系统的扩充、更新与灵活配置,易于实现系统的模块化;⑤便于设备的软件设计,所有接口的软件就是对不同的口地址进行操作;⑥便于故障诊断和维修,同时也降低了成本。
总线的逻辑电路有些是三态的,即输出电平有三种状态:逻辑“0”,逻辑“1”和“高阻”态。
1.4计算机总线有哪些,分别是什么?【解】总线按其信号线上传输的信息性质可分为三组:①数据总线,一般情况下是双向总线;②地址总线,单向总线,是微处理器或其他主设备发出的地址信号线;③ 控制总线,微处理器与存储器或接口等之间1.5 数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?【解】数据总线(DB)为双向结构,数据在CPU与存储器或I/O 接口之间的传送是双向的,(数据既可以读也可以写),其宽度通常与微处理器的字长相同。
第二章计算机基础(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,试计算下列各式。
微机原理第二章习题参考答案微机原理第二章作业参考答案:1.(2字节)a.指由8个二进制位组成的通用基本单元(6时钟周期)b.是cpu指令执行时间的刻度(10软件配置管理空间)c.cpu所要出访的存储单元数,与cpu地址总线条数有关(11实际地址)d.唯一能代表存储空间每个字节单元的地址,用5位16进制数表示(7总线周期)e.cpu执行访问存储器或i/o操作所花时间(12逻辑地址)f.由段基址和段偏转地址共同组成,均用4十一位16十进制则表示(4基本指令继续执行时间)g.指寄存器乘法指令继续执行所花掉时间(3指令)h.顺利完成操作方式的命令(1字长)i.指cpu在交换、加工、存放信息时信息位的基本长度(5指令执行时间)j.各条指令执行所花时间,不同指令值不一(8cache)k.为减轻cpu与主存储器间互换数据的速度瓶颈而建立的高速缓冲存储器(9虚拟存储器)l.cpu执行程序时看见的一个速度吻合内存却具有外存容量的假想存储器2.(1)mhz频率单位,可以用来表示cpu的主频1mhz=1000000hz(2)ghz频率单位,可以用来表示cpu的主频1ghz=1000000000hz(3)μs时间单位,可以用来表示基本指令执行时间1μs=10s(4)mips每秒百万条指令,用来表示基本指令执行速度(5)kb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1kb=2bytes(6)mb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1mb=2bytes(7)gb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1gb=2bytes(8)tb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1tb=2bytes3.eu的共同组成部件:(3)alu(7)状态标志寄存器(9)掌控单元(12)通用寄存器组与biu的共同组成部件:(1)地址部件au(2)段界检查器(4)20十一位地址产生器(5)20十一位物理地址加法器(6)指令队列(8)总线掌控逻辑(10)段寄存器组(11)指令指针4.标志sf(b符号标志)cf(d位次标志)af(h辅助位次标志)df(i方向标志)tf(a陷阱标志)of(c外溢标志)pf(f奇偶标志)if(g中断容许标志)zf(e零标志)类型sssccsscs为0时则表示的状态两个带符号数运算结果就是正数两个并无符号数经alu运算后并无位次或者借位产生两个数运算时,两个高4十一位运算并无位次或者借位产生数据串成操作方式的增量地址为自动递减正常调试两个带符号数运算后没产生外溢运算结果数据高8位中二进制存有奇数个1中断屏蔽数据运算时结果不为零403020?6107.首地址pa=62d87h末地址pa=62d87h+28h(则表示40字节)-1h=62daeh8.实际地址:99a40h9.实际地址:3ba00h10填写下列个状态下的有效信号状态总线操作类型t1t2t3t4最小模式下总线存储器读操作最小模式下总线存储器写操作11.特点方式最小模式最大模式12.00130h:00131h:00135h:00136h:13.0dah31h7fh5ehmn/mx引脚高电平低电平处理器个数12个以上总线控制信号的产生8086828834h00230h:2dh00231h:0abh00232h:00233h:67h14.55h00330h:20h00331h:00332h:45h00333h:20h00334h:53h00335h:20h00336h:54h00337h:20h00338h:43h15.(1)ds:11a7es:11a7ss:21becs:31b8ds,es段顶:11a70hss段顶上:21be0hss段底:22ca8hcs段顶上:31b80hds,es段底:21a6fhcs段底:41b7fh(2)of=0df=0if=1sf=0zf=0zf=0pf=0cf=016.5ch20a28h:00h20a29h:7ah20a2ah:20a2bh:20a2ch:20a2dh:20a2eh:20a2fh:20a30h:20a31h:53h42h0ffh12h00h5bh0ah入栈完毕时,(ss)=20a0h(ip)=0028h17.8086系统中:(1)8284a时钟产生器的作用是:为8086cpu提供时钟,产生cpu所需的系统时钟信号(2)8282/8283地址锁存器的作用是:锁存8086地址总线中的信息(3)8286/8287总线收发器的作用是:传送8086数据总线中的信息(4)8288总线控制器的促进作用就是:在最小工作模式下产生8086系统所需的掌控信号18.8086寻址i/o端口时,使用16条地址线,可寻址32k个字端口,或64k个字节端口。
作业二的答案1.8086存储器为什么要采用分段结构,每段的容量有什么要求,为什么?答:8086CPU拥有20位的地址总线,可访问的最大存储容量为1MB,其物理地址的范围为:00000H~FFFFFH;而8086CPU的内部的寄存器只有16位,能访问最大存储空间为64KB,物理地址范围为:0000H~FFFFH。
采用分段管理的办法可扩大对存储器的寻址范围,以适应超过16位的存储器物理结构。
于是将1MB存储器空间分成许多逻辑段,并规定逻辑段不超过64KB,只能从低4位为0000B的地址开始。
这样每个存储单元就可以用“段地址:偏移地址”的逻辑地址来表示其准确的物理位置,而且段地址和偏移地址就都可以用16位寄存器表达。
2.8086系统中,段寄存器CS=1200H,指令指针寄存器IP=FF00H,试写出指令的逻辑地址和物理地址,指向这物理地址的CS值和IP值是唯一的吗?答:逻辑地址1200H:FF00H物理地址1200H×16 + FF00H =12000H + FF00H =21F00H指向这个物理地址的CS值和IP值不是唯一的。
例如:CS=2100H,IP=0F00H。
3.8086的1MB分成两个512KB存储体的好处是什么?8088的1MB为什么不分?答:8086的1MB分成两个512KB存储体的好处就是CPU既可以单独对其中的一个存储体读/写8位数据,也可以对两个存储体中相邻的单元读/写16位数据。
也就是说8086CPU 既能进行字节操作也能进行字操作。
8088CPU的1MB存储器没有必要划分成两个512KB的存储体,是因为它的数据总线宽度为8位,在一个总线周期里不能进行16位的数据读写。
4.若当前SS=3500H,SP=0800H,请写出堆栈段在存储器中的物理地址范围。
若此时入栈10个字节,SP的内容是什么?若再出栈6个字节,SP为什么值?答:堆栈在存储器里的起始物理地址为3500H×10H+0000H=35000H,堆栈段的容量为64KB,所以栈底的物理地址为3500H×10H + FFFFH=35000H + FFFFH = 44FFFH,所以堆栈段在存储器里的物理地址范围为35000H~44FFFH。
周明德微机原理答案【篇一:(周明德)课后习题答案】t>1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?解:把cpu(运算器和控制器)用大规模集成电路技术做在一个芯片上,即为微处理器。
微处理器加上一定数量的存储器和外部设备(或外部设备的接口)构成了微型计算机。
微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形成了微型计算机系统。
1.2 cpu在内部结构上由哪几部分组成?cpu应该具备哪些主要功能?解:cpu主要由起运算器作用的算术逻辑单元、起控制器作用的指令寄存器、指令译码器、可编程逻辑阵列和标志寄存器等一些寄存器组成。
其主要功能是进行算术和逻辑运算以及控制计算机按照程序的规定自动运行。
1.3微型计算机采用总线结构有什么优点?解:采用总线结构,扩大了数据传送的灵活性、减少了连线。
而且总线可以标准化,易于兼容和工业化生产。
1.4数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?解:数据总线是双向的(数据既可以读也可以写),而地址总线是单向的。
8086cpu为了减少芯片的引脚数量,采用数据与地址线复用,既作数据总线也作为地址总线。
它们主要靠信号的时序来区分。
通常在读写数据时,总是先输出地址 (指定要读或写数据的单元),过一段时间再读或写数据。
dec hjp nz,loophalt第 2章作业答案2.1 ia-32结构微处理器直至pentillm4,有哪几种?解:80386、30486、pentium、pentium pro、peruiumii、pentiumiii、pentium4。
2.6ia-32结构微处理器有哪几种操作模式?解:ia一32结构支持3种操作模式:保护模式、实地址模式和系统管理模式。
操作模式确定哪些指令和结构特性是可以访问的。
2.8ia-32结构微处理器的地址空间如何形成?解:由段寄存器确定的段基地址与各种寻址方式确定的有效地址相加形成了线性地址。
第2章习题参考解答1.8086处理器内部一般包括哪些主要部分?8086处理器与其他处理器一样,其内部有算术逻辑部件、控制与定时部件、总线与总线接口部件、寄存器阵列等。
按功能结构可分为两部分,即总线接口单元(BIU)与执行单元(EU)。
BIU主要包括段寄存器、内部通信寄存器、指令指针、6字节指令队列、20位地址加法器和总线控制逻辑电路。
EU主要包括通用寄存器阵列、算术逻辑单元、控制与定时部件等。
2.什么是总线? —般微机中有哪些总线?所谓总线是指电脑中传送信息的一组通信导线,它将各个部件连接成—个整体。
在微处理器内部各单元之间传送信息的总线称为片内总线;在微处理器多个外部部件之间传送信息的总线称为片外总线或外部总线。
外部总线又分为地址总线、数据总线和控制总线。
随着电脑技术的发展,总线的概念越来越重要。
微机中常用的系统总线有PC总线、ISA总线、PCI总线等。
3.什么是堆栈?它有什么用途?堆栈指针的作用是什么?堆栈是一个按照后进先出的原则存取数据的部件,它是由栈区和栈指针组成的。
堆栈的作用是:当主程序调用子程序、子程序调用子程序或中断时转入中断服务程序时,能把断点地址及有关的寄存器、标志位及时正确地保存下来,并能保证逐次正确地返回。
堆栈除了有保存数据的栈区外,还有一个堆栈指针SP,它用来指示栈顶的位置。
假设是“向下生成”的堆栈,随着压入堆栈数据的增加,栈指针SP的值减少。
但SP始终指向栈顶。
4.在8086 CPU中,FR寄存器有哪些标志位?分别说明各位的功能。
8086 CPU中设置了一个16位的标志寄存器FR,其中用了9位,还有7位保留。
9位中有3位作为控制标志,6位作为状态标志。
IF:中断控制标志。
当IF=1时,允许可屏蔽中断请求;当IF=0时,禁止可屏蔽中断请求。
TF:单步运行标志。
当TF=1,单步运行;TF=0,连续运行程序。
DF:方向标志。
当DF=0,串操作时地址按增量修改;DF=1,地址按减量修改。
《微机原理》习题2 (P40)参考答案2.1为什么说计算机只能“识别”二进制数,并且计算机内部数的存储及运算也都采用二进制?解:因为二进制是计算机刚出现时就奠定的计算机内的进位记数制,之所以选用它来表示计算机内的信息,是因为两个状态的物理器件容易制造和实现,将这两个状态抽象为数字就可用0、1来表示;此外,采用二进制的运算规则较为简单,容易实现。
2.2在进位记数制中,“基数”和“位权(或权)”的含义是什么?一个以b为基数的任意进制数N,它按位权展开式求值的一般通式是如何描述的?解:在进位记数制中,常常要用“基数”(或称底数)来区别不同的数制,而进位制的基数就是该进位制所用的字符或数码的个数。
在一个进位记数制中,每一位都有特定的权,称为位权或简称权。
每个位权由基数的 n次幂来确定。
数N的按位权展开式的一般通式为:N=±(ki×b i)式中,ki为第i位的数码;b为基数;b i为第位的位权;n为整数的总位数;m 为小数的总位数。
2.3将下列十进制数分别转化为二进制数。
(1)147 (2)4095 (3)0.625 (4) 0.15625解:(1) 147 D=10010011 B(2) 4095 D=111111111111 B(3) 0.625 D=0.101 B(4) 0.15625 D=0.00101 B2.4将下列二进制数分别转换为BCD码。
(1)1011 (2) 0.01 (3) 10101.101 (4) 11011.001解:(1) 1011 B=1×23+0×22+1×21+ 1×20=11 D=(0001 0001)BCD(2) 0.01 B=1×2-2=0.25 D=(0.0010 0101)BCD(3) 10101.101 B =1×24+1×22+1×20+1×2-1+1×2-3 =21.625 D=(0010 0001.0110 0010 0101)BCD(4) 11011.001B=1×24+1×23+1×21+1×20+1×2-3=27.125D=(0010 0111.0001 0010 0101)BCD2.5将下列二进制数分别转换为八进制数和十六进制数。
微机原理作业1.8086C P U由哪两部分组成?它们的主要功能就是什么?答:8086CPU由总线接口单元(BIU)与指令执行单元(EU)组成。
总线接口单元(BIU)的功能就是:地址形成、取指令、指令排队、读/写操作数与总线控制。
指令执行单元(EU)的功能就是指令译码与指令执行。
2.微型计算机系统由微处理器、存储器与I/O接口等组成。
3.8086CPU中的指令队列可存储6个字节的指令代码,当指令队列至少空出2个字节时,BIU单元便自动将指令取到指令队列中;4.8086系统中,1MB的存储空间分成两个存储体: 偶地址存储体与奇地址存储体,各为512字节。
5.8086系统中存储器采用什么结构?用什么信号来选中存储体?答:8086存储器采用分体式结构:偶地址存储体与奇地址存储体,各为512K。
用AO与BHE来选择存储体。
当AO=0时,访问偶地址存储体;当BHE=0时,访问奇地址存储体;当AO=0,BHE=0时,访问两个存储体。
6.在8086CPU中,指令指针寄存器就是 C 。
(A) BP ﻩ(B)ﻩSPﻩﻩ(C)ﻩIP (D)ﻩDI7.8086CPU中的SP寄存器的位数就是B。
24位(A) 8位ﻩ(B) 16位ﻩ(C) 20位ﻩﻩ(D)ﻩ8.8086CPU中指令指针寄存器(IP)中存放的就是 B 。
(A)指令 (B)指令偏移地址 (C)操作数(D)操作数偏移地址9.若当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址(最大),若此时入栈10个字节,SP内容就是什么?若再出栈6个字节,SP为什么值?答:堆栈段的物理地址范围:35000H~357FFH当前顶的物理地址为:35000H+0800H=35800H入栈10个字节以后:SP=0800H-000AH=07F6H出栈6个字节以后:SP=07F6H+0006H=07FCH10.下列关于8086系统堆栈的论述中,正确的就是 A 。
ﻩ(A)堆栈的工作方式就是“先进后出”,入栈时SP减小(B) 堆栈的工作方式就是“先进后出”,入栈时SP增大(C) 堆栈的工作方式就是“先进先出”,入栈时SP减小(D)堆栈的工作方式就是“先进先出”,入栈时SP增大11.8086CPU对内存读/写操作,需两个总线周期的读/写操作就是D 。
(A) 从偶地址读/写一个字节(B) 从奇地址读/写一个字节(C) 从偶地址读/写一个字(D) 从奇地址读/写一个字12.总线周期就是指C。
(A) 执行一条指令所需要的时间;(B) BIU完成一次读与一次写I/O端口操作所需时间之与;(C)BIU完成一次访问存储器或I/O端口操作所需要的时间;(D) BIU完成一次读与一次写存储器操作所需时间之与。
13.8086CPU通过RESET引脚上的触发信号来引起系统复位与启动,复位时代码段寄存器CS=0FFFFH ,指令指针IP= 0000H 。
重新启动后,从物理地址为 FFFF0H 的地方开始执行指令。
14. 8086CPU数据总线信号的状态就是 C 。
(A)单向双态(B)单向三态 (C)双向三态(D)双向双态15.标志寄存器PSW中控制CPU的INTR引脚的标志位就是 C 。
(A)TF(B) DF (C) IF (D) ZF16.已知段地址与偏移地址分别为2015H与0028H,此存储单元的物理地址就是什么?答:存储单元的物理地址:20150H+0028H=20178H17.因为8086 CPU的字数据既可以存放在内存的偶地址单元,也可以安排在奇地址单元,所以其堆栈指针SP A。
A.最好指向偶地址单元B.可以指向任何地址单元C、只能指向偶地址D、只能指向奇地址18.在8086CPU中,数据地址引脚A采用时分复用。
A、AD0~AD15B、AD0~AD9 ﻩC、AD0~AD20 D.AD10~AD219.8086CPU把1MB空间划分为若干逻辑段,每段最多可含D的存储单元。
A.1KBﻩﻩB.8KB ﻩC.16KBD.64KB20.设DS=1000H,ES=2000H,SS=3000H,SI=0010H, BX=0100H,BP=0200H,数据段中变量名为VAL的偏移地址值为0030H,写出下列指令源操作数字段的寻址方式与物理地址值:MOV AX,VAL 寻址方式直接寻址,物理地址10030H。
MOV AX,ES:[BX] 寻址方式寄存器间接寻址,物理地址20100H 。
MOVAX,VAL[BP][SI]寻址方式相对基址变址寻址,物理地址30240H。
说明:①以BX寄存器间接寻址,则默认的段就是DS: 例如:MOVAX,[BX]以BP寄存器间接寻址,则默认的段就是SS:例如:MOV AX,[BP]②同样相对基址变址寻址也就是有两种情况:若BX提供基地址,则默认为DS段,即数据段;若:BP提供基地址,则默认为SS段,即堆栈段;21.8086CPU的标志寄存器中状态标志位有 D 个。
(A)3(B)4 (C)5(D)622.8086CPU可寻址访问的最大I/O空间为B。
(A)1KB (B)64KB(C)640KB(D)1MB23.8086 CPU可用于间接寻址的寄存器有 B 。
(A)AX,BX,CX,DX(B)SI,DI,BX,BP(C)DS,SI,ES,DI (D)SP,IP,CS,DS24.在8086CPU中,一个最基本的总线周期由4个时钟周期(T状态)组成,在T1状态,CPU在总线发出 C 信息。
(A)数据(B)状态 (C)地址 (D)其她25.8086CPU中指令队列可存储C个字节的指令代码。
(A)4 (B)5 (C)6 (D)826.某EPROM芯片,其存储容量为512K×8位,该芯片的地址线与数据线数目为 D 。
(A) 8,19 (B)17,8 (C) 18,8 (D) 19,827.用8K×8位的RAM6264芯片组成64K字的存储子系统,需要多少芯片?地址线中有多少位参与片内寻址?至少需要多少位组合成片选信号? 答:需要16个芯片,地址线中有13位参与片内寻址,至少需要4位组合成片选信号。
28.阅读程序段,指出运行结果MOV CX,05Hﻩ MOVﻩBX,00HNEXT: MOVﻩAL,ARRAY[BX]ADD AL,07HDAAMOV NEW[BX],ALINCﻩBXLOOPﻩNEXTﻩﻩ HLTARRAY DB 43H,54H,65H,77H,89HNEWﻩ DB 5 DUP(?)程序运行后,NEW开始的连续5个单元的内容依次为: 50H , 61H,72H , 84H , 96H 。
29.标志寄存器PSW中控制CPU的INTR引脚的标志位就是C。
(A) TF (B) DF (C) IF (D) ZF30.8086CPU外部的数据总线与地址总线分别为C位。
A、16,16ﻩB.20,16 ﻩC、16,20ﻩﻩD、20,2031.指令代码的地址存放在寄存器D中。
A.DS与SIB.BX与BPﻩC、ES与DIﻩD、CS与IP32.设字长为八位,有x= -1,y=124,则有:[x+y]=_________,补=__________;[x-y]补33.数制转换:247、86=F7.DC H =_0011、_____________BCD;34.在8086CPU中,由于BIU与EU分开,所以_取指令____与_执行指令____ 可以重叠操作,提高了CPU的利用率;35.8086的中断向量表位于内存的_00000H~003FFH______区域,它可以容纳__256__个中断向量, 每一个向量占__4__个字节;36.8086系统中,地址FFFF0H就是__CPU复位以后执行第一条指令的_________________地址;37.已有AX=E896H,BX=3976H,若执行ADD BX,AX指令,则结果BX,AX,标志位CF,OF,ZF各为何值?答:BX=220CH;AX=E896H;CF=1;0F=0;ZF=0;38.源程序如下:MOV CL,4MOV AX,[2000H]SHL AL,CLSHR AX,CLMOV[2000H],AX试问: 若程序执行前,数据段内(2000H)=09H,(2001H)=03H, 则执行后有(2000H)=_39H____,(2001H)=_00H_____。
本程序段的功能_将(2000H),(2001H)两组相邻单元中存放的未组合型BCD码压缩成组合型BCD码,并存放入(2000H)单元,0→(2001H)。
39.已知BX=7830H,CF=1,执行指令:ADC BX,87CFH之后,BX=_0000H___________,标志位的状态分别为CF=___1____,ZF=__1_____,OF=__0______,SF=____0____。
40.源程序如下:CMPAX,BXJNCL1JZ L2JNS L3JNO L4JMPL5设AX=74C3H,BX=95C3H,则程序最后将转到哪个标号处执行?试说明理由。
答:74C3H95C3HDF00H且有:CF=1, ZF=0,SF=1,OF=1所以程序转到L5处执行41.设IBM PC微机内存中某个单元的物理地址就是12345H,试完成下列不同的逻辑地址表示:(1)1234H:_05__H1200____H:0345H42.假设某程序执行过程中,(SS)=0950H,(SP)=64H,试问该用户程序的堆栈底部物理地址就是多少?答:(SS)*10H+(SP)-1=09563H43.设堆栈段寄存器(SS)=0E4BH,程序中设堆栈长度为200H个字节。
试计算出堆栈底部字单元物理地址,堆栈指针SP初始值(即堆栈中没有数据时)与SP初始值指向的物理地址。
答:物理地址为:0E4B0H-1,SP的初始值为200,指向的物理地址为:0E4B0H44.对于由8086CPU组成的系统,堆栈的位置如何确立?堆栈的首址(即:SS中的值)就是不就是栈底?为什么?答:8086系统中堆栈的位置由SS、SP初始化后确立:其中(SS)*16决定了堆栈起始单元的地址,即堆栈首地址;(SS)*16+(SP初值)-1决定了堆栈段最后一个单元的地址,即堆底;(SS)*16+(SP现值)决定了堆栈段当前段栈顶。
显然,堆栈首地址并不就是栈底。
一般来说,在堆栈所在的内存区域内,栈底为高地址端。
堆栈初始化后,栈顶指向栈底+1单元的偏移地址。
当堆栈压入数据后,栈顶地址总就是小于栈底地址(因为一次压入两个字节数据),位于低地址端。
45.设8255A的4个端口地址分别为0C0H、0C2H、0C4H与0C6H,要求用按位置位/复位控制字使PC6输出方波信号,试编程实现。
解:MOV DX, 0C0HMOVAL, 80HOUT DX, ALL1:MOV AL, 0CHOUT DX,ALNOPNOPMOV AL, 0DHOUT DX,ALNOPNOPJMP L146.设8255A接到系统中,端口A、B、C及控制口地址分别为220H、222H、224H及226H,工作在方式0,试编程将端口B的数据输入后,从端口C输出,同时,将其取反后从端口A输出。