微机原理及其应用_第4章习题答案

合集下载

微机原理作业与答案第四章

微机原理作业与答案第四章

微机原理作业与答案第四章第四章汇编语⾔程序设计4-2 下列程序执⾏后,寄存器AX,BX,CX的内容分别是多少?ORG 0202HDA_WORD DW 20HMOV AX,DA_WORD ;(AX)=0020HMOV BX,OFFSET DA_WORD ;(BX)=0202H (BX)=0,这是书中的参考答案MOV CL,BYTE PTR DA_WORD ;(CL)=20H(因PTR,则字的第⼀字节)MOV CH,TYPE DA_WORD ;(CH)=2(变量类型数值);(CX)=0220H4-4 试编制⼀程序(不是程序段),把CHAR1中各⼩写字母分别转换为对应的⼤写字母,并存放在CHAR2开始的单元中DDD0 SEGMENTCHAR1 DB ‘abcdef’N EQU $-CHAR1;变量必须先定义后使⽤,⽽不能相反CHAR2 DB N DUP(0);不能把此句与上⼀句对调DDD0 ENDSSTACK SEGMENT STACKDB 200 DUP(0)STACK ENDS ;P126(代码段和堆栈段是不可少的)CSEG SEGMENTASSUME CS:CSEG,DS:DDD0,SS:STACK START: MOV AX,DDD0 MOV DS,AX ;MOV DX,AXMOV ES,AX ;只要SI,DI都⽤MOV SI,0 ;LEA SI,CHAR1MOV DI,0 ;LEA DI,CHAR2MOV CX,NAGAIN: MOV AL,CHAR1[SI] ; MOV AL,[SI]SUB AL,20HMOV CHAR2[DI],AL ; MOV [DI],ALMOV DL,AL ;不是必须的,但做实验是有⽤的。

MOV AH,2INC SIINC DI LOOP AGAINMOV AH,4CHINT 21H ;不是必须的CSEG ENDSEND START第⼆种⽅法:DDD0 SEGMENTCHAR1 DB ‘abcdef’N EQU $-CHAR1CHAR2 DB N DUP(0) DDD0 ENDSSTACK SEGMENT STACKDB 200 DUP(0)STACK ENDS ;P126(代码段和堆栈段是不可少的)CSEG SEGMENTASSUME CS:CSEG,DS:DDD0,SS:STACKSTART: MOV AX,DDD0 MOV DS,AXMOV ES,AXLEA SI,CHAR1LEA DI,CHAR2MOV CX,NCLD ;不写(隐含)也是0(递增)但不能STDAGAIN: LODSB ;执⾏⼀次,隐含修改SISUB AL,32stosb ;MOV [DI],AL;执⾏⼀次, 隐含修改DInop ;INC DILOOP AGAIN ;LOOP指令只修改CX,不管SI,DIMOV AH,4CHINT 21H ;不是必须的CSEG ENDSEND START4-6在BUF地址处起,存放有100个字节的字符串,设其中有⼀个以上的“A”字符,编程查找出第⼀个“A”字符相对起始地址的距离,并将其存⼊LEN单元。

微机原理及应用参考答案

微机原理及应用参考答案

名师整理优秀资源参考答案第一章计算机中的数制和码制第二章计算机概述一、填空题1.82.23. 10244. 25.5、11001.1、00100101.0101B5. 1000010B、42H、66H6. 41.625、29.AH7. 10001101B8. 11001001、110010109. -128 ~ +12710. 系统软件、应用软件11. 电子管、超大规模集成电路二、单选题1. A4. C2. C5.A 3.D 6. C三、分析简答题1. 8086 CPU 的总线根据其中信息传送的类型可分为几种?哪几种?答:8086 CPU 的总线根据其中信息传送的类型可分为三种种,分别是:数据总线、地址总线和控制总线2. 写出-25 的原码、反码、补码,并将补码转换成十六进制数 (设机器字长为8 位)。

答:X=-25=-11001BX 原码:10011001BX 反码:11100110BX 补码:11100111B = E7H名师整理 优秀资源 3. 举例说明什么是机器数,什么是真值?答: 将符号数值化了的数称为机器数。

如: -18=-10010B(真值);机器数为: 10010010B第三章 半导体存贮器一、填空题1. ROM 、RAM2. 6 个3. 8、4二、单选题1. A 5. C2 . B3 . D4 . B6 . C7 . B三、分析简答题1. 在对存储器芯片进行片选时,全译码方式、部分译码方式和线选方式各有何特点?答: ①全译码方式: 存储器芯片中的每一个存储单元对应一个唯一的地址。

译码需要的器件多;②部分译码方式:存储器芯片中的一个存储单元有多个地址。

译码简单;③线选:存储器芯片中的一个存储单元有多个地址。

地址有可能不连续。

不需要译码。

四、硬件接口设计题1. 答:(1)A10~08088CPUWEA10~0#CSY4WEA10~01#CS1Y5名师整理优秀资源(2) 存储器类型为RAM 总容量为4K×8地址范围: 0# 2000H-27FFH1# 2800H-2FFFH2. 答:(9 分)(1) 存储器类型:RAM该系统的存储器容量为:6K×8位(或:6K 字节)(2) 1#芯片的地址范围:1000H ~ 17FFH2#芯片的地址范围:0800H ~ 0FFFH3#芯片的地址范围:0000H ~ 07FFH3. 1)1K×42)2K×8或2KB3)地址分配范围第一组: A19~ A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 最小地址最大地址第二组:0 ~0 ~0 ~0 ~111111111111111111110 00000H~1 003FFH0 00400H~1 007FFH第四章微型计算机及微处理器的结构和组成一、填空题1. BIU、EU、指令的译码和指令执行2. 4、16、16、6、20名师整理优秀资源3. 8、164.1、2二、单选题1 . B2 . B三、分析简答题1. 8086/8088 微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。

微机原理第四章课后习题答案

微机原理第四章课后习题答案

第四章课后作业(6—27)6.试按下列要求分别编制程序段。

(1)把标志寄存器中符号位SF置“1”。

(2)寄存器AL中高、低四位互换。

(3)由寄存器AX、BX组成一个32位带符号数(AX中存放高16位),试求这个数的负数。

(4)现有三个字节存储单元A、B、C,在不使用ADD和ADC指令的情况下,实现(A)+(B) C。

(5)用一条指令把CX中的整数转变为奇数(如原来已是奇数,则CX中数据不变,如原来是偶数,则(CX)+1 形成奇数)。

答:(1) LAHFOR AH,80HSAHF(2) MOV CL,4ROL AL,CL(3) MOV CX,0NEG BXJC CHGJMP GOCHG: MOV CX,1GO: NEG AXSUB AX,CX(4) MOV CL,AMOV AL,BMOV X,ALCHECK:INC XDEC CLJNZ CHECK(5) OR CX,0001H7.试给出下列各指令的机器目标代码。

(1)MOV BL,12H [SI](2)MOV 12H [SI],BL(3)SAL DX,1(4)AND 0ABH [BP] [DI],1234H答:(1)100010 1 0 01 011 100 00010010=8A5C12H(2)100010 0 0 01 011 100 00010010=885C12H(3)110100 0 1 11 100 010=0D1E2H(4)100000 0 1 10 100 011 10101011 00000000 00110100 00010010=81A3AB003412H8.执行下列指令:STR1 DW ‘AB’STR2 DB 16DUP(?)CNT EQU $-STR1MOV CX,CNTMOV AX,STR1HLT执行完成之后,寄存器CL的值是多少?寄存器AX的值是多少?答:因为CNT=16+2=18,所以CX=18=0012H,所以CL=12H=0001,0010;AX中装入的是‘AB’的ASCII码值,其中‘A’在高位AH中,‘B’在低位AL 中,所以AX=4142H=0100,0001,0100,0010。

微型计算机原理及应用第三版课后答案

微型计算机原理及应用第三版课后答案

微型计算机原理及应用第三版课后答案【篇一:《微型计算机原理及应用》课后习题答案】=txt>第一章1.1 解释题(1) 微处理器【解答】由大规模集成电路芯片构成的中央处理器(cpu),叫做微处理器。

(2) 微型计算机【解答】以微处理器为基础,配以内存储器、输入输出接口电路、总线以及相应的辅助电路而构成的计算机裸机,叫做微型计算机。

(3) 微型计算机系统【解答】微型计算机系统由硬件系统和软件系统组成。

即由微型计算机、配以相应的外部设备(如打印机、显示器、键盘、磁盘机等),再配以足够的软件而构成的系统。

(4) 单板机【解答】将微处理器、ram、rom以及i/o接口电路,再配上相应的外设(如小键盘、led显示器等)和固化在rom中的监控程序等,安装在一块印刷电路板上构成的微型计算机系统称为单板机。

(5) 运算器【解答】运算器是直接完成各种算术运算、逻辑运算的部件,主要由alu(arithmetic and logic unit,算术逻辑部件)、通用寄存器、标志寄存器等组成。

(6) 地址总线【解答】地址总线是cpu对内存或外设进行寻址时,传送内存及外设端口地址的一组信号线。

地址总线的条数多少决定了cpu的寻址能力。

(7) 数据总线【解答】数据总线是cpu与内存或外设进行信息交换时,所用的一组数据信号线。

它决定了cpu一次并行传送二进制信息的位数,反映出cpu的“字长”这个重要性能指标。

(8) 控制总线【解答】控制总线是在cpu与外部部件之间传送控制信息(如读/写命令、中断请求命令等)的一组信号线。

1-2 单片机应包括哪些基本部件?其主要应用于哪些领域?【解答】一般单片机芯片中包括微处理器、ram、rom、i/o接口电路、定时器/计数器,有的还包括a/d、d/a转换器等。

其主要应用于智能化仪器仪表及工业控制领域。

1-3 按图1-11和图1-12,写出取第二条指令操作码和执行第二条指令的过程。

【解答】1) ip的值(002h)送入地址寄存器ar;2) ip的内容自动加1,变为003h;3) ar将地址码通过地址总线送到存储器的地址译码器,经译码后选中002h单元;4) 微处理器给出读命令;5) 所选中的002h单元内容04h送上数据总线db;6) 数据总线db上的数据04h送到数据寄存器dr;7) 因是取指操作,取出的是指令操作码04h,即由dr送入指令寄存器ir;8) ir中的操作码经指令译码器id译码后,通过pla发出执行该指令的有关控制命令。

微机原理及应用(双语)知到章节答案智慧树2023年山东科技大学

微机原理及应用(双语)知到章节答案智慧树2023年山东科技大学

微机原理及应用(双语)知到章节测试答案智慧树2023年最新山东科技大学第一章测试1.What kind of device does the MCS-51 microcontroller belong to? ( )参考答案:8-bit device2.The operation of taking a number from memory into the CPU is called ( ).参考答案:READ3.The 8951 microcontroller contains ()参考答案:EEPROM4.What is the highest address in a memory system with 16 data lines? ()参考答案:655355.What are the basic actions that a microprocessor can carry out?参考答案:Taking a number from memory (READ);Arithmeticoperations; Putting a number into memory (WRITE);Making decisions about the program route (jumps and subroutine calls);Logicaloperations (bit manipulation)第二章测试1.In internal RAM, only one of the four register banks is in used at any timewhen the program is running. ()参考答案:对2.When using an external crystal for the 8051 clock, what values of capacitorsshould be connected to it? ()参考答案:30 pF3.On the 8051 what is the storage size (in bits) of accumulator A? ( )参考答案:8 bit4.Which port has alternate function pins? ( )参考答案:Port 35.Which type of memory organization is used by the MCS-51 microcontrollers?参考答案:Harvard第三章测试1.What is the jump range of instruction LJMP? ()参考答案:64KB2.What is the addressing mode of the second operand in the instruction MOVXA, @DPTR ? ()参考答案:Indirect3.If MOV (direct) is used for address 87h which type of memory is accessed?()参考答案:SFRs4.The Stack Pointer will be decremented when a PUSH operation is made? ( )参考答案:错5.Which instruction will clear the low nibble of A if A = C5h?参考答案:ANL A, #0F0h第四章测试1.What is the jump range of instruction CJNE or DJNZ ? ()参考答案:256B2.What is the address of the second operand in the instruction:MOVC A,@A+DPTR ?Assume DPTR=1000h, A=80h. ()参考答案:1080h3.Which programming types does the assembly language belong to? ()参考答案:Linear4.What are the basci program sturcture in assembly language? ( )参考答案:Subroutine structure;Branching structure;Sequential structure;Loop structure5.Which Pseudo-instruction can put bytes in ROM memory? ( )参考答案:DB---------------------------------------------------------------------------------------------------------------------------------第五章测试1.How many interrupt sources are there in 8051 ? ()参考答案:52.The EA bit in IE register does not actually enable all interrupts, but allowsthem to be enabled separately. ()参考答案:对3.For 8051, each interrupt causes the program to jump directly to an addressat which an ISR is located. ()参考答案:对4.In an ISR (Interrupt Service Routine), which of the following instructionsmust be included? ()参考答案:Return from interrupt instruction5.How many interrupts are enabled after running this instruction “MOV IE,#05h”?参考答案:第六章测试1.For timers, which mode produces an 8-bit auto-reload timer? ()参考答案:Mode 22.Which register can we use to set up the mode of operation of Timer 0? ()参考答案:TCON3.For the serial port, which mode is an 8-bit UART? ()参考答案:Mode 14.Where is the parity bit in an RS232 packet? ()参考答案:After data bits5.How many modes can we use in a timer/counter ?参考答案:4第七章测试 the three types of bus which are used when external memory isconnected to the 8051.( )参考答案:Address bus;Control bus;Data bus2.When using external RAM, which port is used for the low address byte? ()参考答案:Port 03.If we need to expand an 8031 by adding 32Kbytes of code memory EPROM,how many address lines should be connected between the 8031 and theEPROM? ()参考答案:154.If an 8031 chip is connected to an external EPROM, Which line can generate asignal to enable reading of data from the EPROM? ()参考答案:/PSEN5.If the program is stored entirely in an external EPROM, what voltage must beapplied to the /EA PIN on the 8051? ()参考答案:0 volts第八章测试1.There are 8 analog input channels that be connected to the ADC0809. ()参考答案:对2.How many bits are required to select which analog channel is active on theADC0809? ()参考答案:33.In order to use the DAC0832, an external operational amplifier must beconnected. ()参考答案:对4.How many port pins would be used to connect a 6*4 matrix keypad to an8051 (excluding the interrupt input)? ()参考答案:105.What are the common forms that the internal wiring of the 7-segmentdisplay can take?( )参考答案:Common anode;Common cathode---------------------------------------------------------------------------------------------------------------------------------第九章测试1.In almost all cases, except completely trivial instances, the design of amicrocontroller-based system must be a top-down activity. This means that one must look first at the broad picture and then refine it down to systemsand sub-systems in both hardware and software. ()参考答案:对2.The lowest level of errors comprises those that result from incorrect use ofthe assembly language, and these are known as syntax errors. ()参考答案:对3.Which errors belong to syntax error of assembly language? ( )参考答案:Symbol not define;Wrong representation of numbers;Misspelling of instructions;Incorrect addressing modes4.The basic steps of microcontroller system design are: Requirement analysis,functional specification, design, implementation, system testing,documentation, and installation. ()参考答案:对5.The function of WDT(Watchdog Timer) is to do the syntax error detection.()参考答案:错。

微机原理课后答案 (4)

微机原理课后答案 (4)

微机原理课后答案第一章:计算机系统简介1.1 问题1.计算机硬件系统由哪些部分组成?2.什么是计算机软件系统?3.计算机的主要功能有哪些?1.2 答案1.计算机硬件系统由以下几部分组成:–中央处理器(CPU)–内存(Memory)–外部设备(包括输入设备和输出设备)2.计算机软件系统是指计算机系统中的各种软件程序的集合,包括系统软件和应用软件。

系统软件用于管理和控制计算机硬件系统的运行,例如操作系统、编译器、数据库管理系统等。

应用软件用于实现各种具体的应用功能,例如文字处理软件、图形设计软件、游戏等。

3.计算机的主要功能包括:–进行数据的输入、输出和存储。

–进行数据的处理和运算。

–运行各种软件程序,实现各种功能。

第二章:计算机的基本组成部分2.1 问题1.什么是计算机的存储器?2.什么是计算机的输入设备?3.什么是计算机的输出设备?2.2 答案1.计算机的存储器是指计算机中用于存储数据和程序的设备,包括主存储器和辅助存储器。

主存储器又称为内存,是计算机中用于存放程序和数据的临时存储区域,其容量相对较小但访问速度很快。

辅助存储器是用于永久性存储数据和程序的设备,例如硬盘、固态硬盘或者光盘。

2.计算机的输入设备是用于将外部数据或命令输入到计算机中的设备,常见的输入设备包括键盘、鼠标、扫描仪、摄像头等。

3.计算机的输出设备是用于将计算机处理后的结果或数据输出到外部的设备,常见的输出设备包括显示器、打印机、音频设备等。

第三章:计算机的运算方法3.1 问题1.什么是计算机的算术运算?2.什么是计算机的逻辑运算?3.什么是计算机的数据转移?3.2 答案1.计算机的算术运算是指计算机对数字数据进行加、减、乘、除等运算的过程。

算术运算包括整数运算和浮点数运算。

整数运算是指对整数进行计算的过程,浮点数运算是指对带有小数部分的实数进行计算的过程。

2.计算机的逻辑运算是指计算机对逻辑数据进行与、或、非等运算的过程。

逻辑运算常用于判断和决策的场景,例如判断某个条件是否为真、执行不同的分支等。

微机原理第4章练习题及答案

微机原理第4章练习题及答案

微机原理第4章练习题及答案第4章 80x86指令系统一、自测练习题㈠选择题 1.MOV AX,[BX+SI]的源操作数的物理地址是( )。

A.(DS)×16+(BX)+(SI) B. (ES)×16+(BX)+(SI) C.(SS)×10H+(BX)+(SI) D.(CS)×10H+(BX)+(SI)2.MOV AX,[BP+Sl]的源操作数的物理地址是( )。

A.(DS)×10H+(BP)+(SI) A. (ES)×16+(BP)+(SI) C.(SS)×16+(BP)+(SI) D.(CS)×10H+(BP)+(SI) 3.MOV AX,ES:[BX+SI]的源操作数的物理地址是( )。

A.(DS)×16+(BX)+SI) B.(ES)×10H+(BX)+(SI) C.(SS)×10H+(BX)+SI) D.(CS)×16+(BX)+(SI)4.JMP WORD PTR[DI]是( )。

A.段内间接转移B.段间间接转移C.段内直接转移D.段间直接转移5.JMP FAR PTR BlOCK(BLOCK是符号地址)是( )。

A.段内间接转移B.段间间接转移C..段内直接转移D.段间直接转移6.INC指令不影响( )标志。

A.OF B.CF C.SF D.ZF 7.条件转移指令JNE的测试条件是( )。

A.ZF=1 B.CF=0 C.ZF=0 D.CF=1 8.下列指令中,有语法错误的是( )。

A.MOV [SI],[DI] B.IN AL,DX C.JMP WORD PTR[BX+8] D.PUSH WORD PTR 20[BX+S1] 9.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSH AX后,存放数据21H的物理地址是。

A.20102H B.20101H C.200FEH D.200FFH 10.对于下列程序段:AGAIN:MOV AL,[SI] MOV ES:[DI],AL INC SI INC DI LOOP AGAIN 也可用指令完成同样的功能。

(完整版)微型计算机原理应用第四版答案

(完整版)微型计算机原理应用第四版答案

(完整版)微型计算机原理应⽤第四版答案第1章习题1.1 将下列⼆进制数转换为⼗进制数和⼗六进制。

(1)1101(2)=13=D(H)(2)11010(2)=26=1A(H)(3)110100(2)=52=34(H)(4)10101001(2)=169=A9(H)要点:从低位起,按每4位将对应⼆进制转换成⼗六进制。

⽽不是通过⼗进制转换。

1.2 见上。

1.3简述3个门电路的基本元素在电路中对电平⾼低的作⽤。

答:与、或、⾮。

1.4 布尔代数有哪两个特点?答:(1)值只有两个;(2)只有与、或、反3种运算。

1.5 布尔代数的“或运算”结果可⽤哪两句话来归纳?其“与运算”⼜可归纳成哪两句话“答:(1)“或运算”运算结果为有⼀真必为真,两者皆假才为假。

(2)“与运算”有⼀假即为假,两者皆真才为真。

1.6 什么叫原码、反码及补码?答:原码就是⼀个数的机器数。

反码:将原码每位取反,即为反码。

更准确的是:正数的反码就等于它的原码;负数的反码就是它的原码除符号位外,各位取反。

补码:反码加1就是补码。

更准确的是:正数的补码就等于它的原码;负数的补码就是它的反码加1。

例:X1=+100 1001 X2=-100 1001则:[X1]原 = 0100 1001[X1]反 = 0100 1001[X1]补= 0100 1001[X2]原 = 1100 1001[X2]反 = 1011 0110[X2]补 = [X2]反+1= 1011 01111.7 为什么需要半加器和全加器,它们之间的主要区别是什么?答:(1)因为加法的第⼀位没有进位,所以⽤半加器即可;⽽第⼆位起可能有进位,故需要考虑全加器;(2)两者的区别是半加器为双⼊双出,全加器为三⼊双出。

1.8 ⽤补码法写出下列减法的步骤:(1)1111(2)-1010(2)=?(2)=?(10)答:(2)1100(2)-0011(2)=?(2)=?(2)答:按上述所讲的正规⽅法做。

微机原理 第四章答案

微机原理 第四章答案
14、设(BX)=0400H,(DI)=003CH,执行 LEA BX,[BX+DI+0F62H]后,(BX)=? (BX)=139E H
15、设(DS)=C000H,(C0010H)=0180H, (C0012H)=2000H,执行LDS SI,[10H]后, (SI)=?, (DS)=? (SI)=0180 H,(DS)=2000 H
REP STOSW 程序段的功能:
将起始地址为0404 H开始的80 H(128)个字单元清成0 或将起始地址为0404 H开始的100 H(256)个字节单元清成0
11
第4章 微型计算机原理作业情况
13、 设(BX)=6B30H,(BP)=0200H,(SI)=0046H, (SS)=2F00H,(2F246H)=4154H,试求执行 XCHG BX,[BP+SI]后, (BX)=?,(2F246H)=? (BX)=4154H (2F246H)=6B30H
6
第4章 微型计算机原理作业情况
8、分别执行下列指令,试求AL的内容及各状态标志位的状态。
(1) MOV AL,19H ;
ADD AL,61H ;(AL)=7AH
OF=0 SF=0 ZF=0 AF=0 PF=0 CF=0
(2) MOV AL,19H ;
SUB AL,61
;(AL)=0DCH
OF=0 SF=1 ZF=0 AF=1 PF=0 CF=1
(1) MOV CL,20H[BX][SI] ;(CL)=0F6 H
(2) MOV [BP][DI],CX
;(1E4F6 H)=5678 H
(3) LEA BX,20H[BX][SI] ;(BX)=0056 H
MOV AX,2[BX]
;(AX)=1E40 H

微机原理及应用习题库与答案

微机原理及应用习题库与答案

微机原理及应用习题库与答案习题与练习题1第1章绪论1.计算机分那几类?各有什么特点?2.简述微处理器、微计算机及微计算机系统三个术语的内涵。

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

微计算机包括80X86微处理器有几代?各代的名称是什么?80386/80486:32位机。

4.采用一种总线标准进行微型计算机的硬件结构设计具有什么优点?5.一个总线的技术规范应包括哪些部分?6.总线的定义是什么?简述总线的发展过程。

7.微型计算机系统总线由哪三部分组成?它们各自的功能是什么?第3章微处理器结构及微计算机的组成1.8086是多少位的微处理器?为什么?2.EU与BIU各自的功能是什么?如何协同工作?3.086/8088与其前一代微处理器8085相比,内部操作有什么改进?4.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。

AX、BX、CX、确定5ch+98h后各标志位的值。

并说明结果的正确性。

5.8086对存储器的管理为什么采用分段的办法?6.在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?具体说明。

7.给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。

8.8086/8088为什么采用地址/数据引线复用技术?9.8086与8088的主要区别是什么?10.怎样确定8086的最大或最小工作模式?最大、最小模式产生控制信号的方法有何不同11.8086被复位以后,有关寄存器的状态是什么?微处理器从何处开始执行程序?12.8086基本总线周期是如何组成的?各状态中完成什么基本操作?13.结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。

14.8086中断分哪两类?8086可处理多少种中断?15.8086可屏蔽中断请求输入线是什么?“可屏蔽”的涵义是什么?16.8086的中断向量表如何组成?作用是什么?17.8086如何响应一个可屏蔽中断请求?简述响应过程。

微机原理及接口第四章习题答案

微机原理及接口第四章习题答案

“微机系统原理与接口技术”第四章习题解答1.判断以下说法是否正确,如有错,请说明原因并改正。

(1)伪指令在汇编过程中不会产生二进制代码。

(2)宏和过程的相同之处是都可用于简化源程序书写、精简目标代码。

(3)在计算机中,高级语言通常需要转换为汇编语言后才能执行。

(4)汇编语言程序上机一般包括编辑、汇编、链接和调试几个步骤。

答:(1)正确。

(2)错误。

宏不能精简目标代码。

(3)错误。

高级语言程序经编译或解释后直接转换为目标代码。

(4)正确。

2.已知数据和符号定义A1 DB ?A2 DB 8K1 EQU 100判断下列指令的正误,并说明错误指令的原因。

(1)MOV K1,AX(2)MOV A2,AH(3)MOV BX,K1MOV [BX],DX(4)CMP A1,A2(5)K1 EQU 200答:(1)错误。

K1是符号常数,在此处相当于立即数100,故不能做目的操作数。

(2)正确。

(3)正确。

(4)错误。

A1、A2都是字节变量,相当于两个存储器单元,故不能同时出现在一条指令中直接进行比较。

(5)错误。

用EQU定义的符号不能重新赋值,除非已用PURGE解除了原值。

3.若数据段中有定义N UM1 EQU 23HN UM2 DW 0则指令MOV NUM2,NUM1 的源、目操作数的寻址方式以及指令执行后NUM2+1单元的内容分别是什么?答:指令MOV NUM2,NUM1的源操作数使用立即数寻址,目的操作数使用直接寻址。

指令执行后NUM2+1单元的内容是0。

4.设DS=6000H,BX=8432H,SS=5000H,SP=3258H,内存69632H~69635H单元的内容依次是00H、11H、22H、33H。

4字节指令CALL DWORD PTR [BX+1200H] 本身位于2000H:3250H处的双字单元中。

当8086执行该指令后转移至子程序入口时,CS、IP、SS、SP各寄存器以及栈顶2个字单元的内容分别是多少?答:执行结果为CS=3322H,IP=1100H,SS=5000H,SP=3254H,栈顶的两个字即断点地址,为2000H:3254H。

微机原理作业与答案第四章

微机原理作业与答案第四章

第四章汇编语言程序设计4-2 下列程序执行后,寄存器AX,BX,CX的内容分别是多少?D SEGMENT AT 0202H;定位数据段地址ORG 0202H ;定位偏移地址DA_WORD DW 20HMOV AX,DA_WORD ;(AX)=0020HMOV BX,OFFSET DA_WORD ;(BX)=0202HMOV CL,BYTE PTR DA_WORD ;(CL)=20H(将变量DA_WORD的属性改变为字节型)MOV CH,TYPE DA_WORD ;(CH)=2(变量类型数值);(CX)=0220H4-4 试编制一程序,把CHAR1中各小写字母分别转换为对应的大写字母,并存放在CHAR2开始的单元中(题目要求:不改变CHAR1的内容)方法1,小写字母转换一个输出显示一个,前3种方法均使用了AL寄存器D SEGMENTCHAR1 DB "abcdefghijklmnopqrstuvwxyz"N EQU $-CHAR1;变量必须先定义后使用,而不能相反CHAR2 DB N DUP(0) ; ;不能把此句与上一句对调,CHAR2 DB$-CHAR1有;的同学这样写,错在哪D ENDSS SEGMENT STACKDB 200 DUP(0)S ENDSC SEGMENTASSUME CS:C,DS:D,SS:S ;ASSUME是伪指令,后面不能写冒号START: MOV AX,DMOV DS,AX;MOV ES,AX ;只要用到串操作指令且DILEA SI,CHAR1 ;MOV SI,OFFSET CHAR1LEA DI,CHAR2 ; MOV DI,OFFSET CHAR2MOV CX,N ;$-CHAR1,不可以AGAIN:MOV AL,[SI]SUB AL,20H ;AND AL,5FH有的同学是这样实现的MOV [DI],ALMOV DL,ALMOV AH,2INT 21H ;从屏幕显示INC SIINC DILOOP AGAINMOV AH,4CHINT 21H ; ;不是必须的C ENDSEND START方法2:使用通用数据传送指令MOVD SEGMENTCHAR1 DB ‘abcdefghijklmnopqrstuvwxyz’N EQU $-CHAR1;变量必须先定义后使用,而不能相反CHAR2 DB N DUP(0);不能把此句与上一句对调D ENDSSTACK SEGMENT STACKDB 200 DUP(0)STACK ENDS ;P126(代码段和堆栈段是不可少的)C SEGMENTASSUME CS:C ,DS:D ,SS:SSTART: MOV AX,DMOV DS,AXMOV ES,AX ;只要用到串操作指令且DIMOV SI,0 ;MOV DI,0 ;MOV CX,NAGAIN: MOV AL,CHAR1[SI] ;SUB AL,20HMOV CHAR2[DI],AL ;INC SIINC DI LOOP AGAINMOV AH,4CHINT 21H ;不是必须的C ENDSEND START第3种方法:使用串的读写指令LODSB STOSBD SEGMENTCHAR1 DB ‘abcdef’N EQU $-CHAR1CHAR2 DB $-CHAR1 DUP(0) D ENDSSTACK SEGMENT STACKDB 200 DUP(0)STACK ENDS ;P126(代码段和堆栈段是不可少的)C SEGMENTASSUME CS:C,DS:D,SS:SSTART: MOV AX,DMOV DS,AXMOV ES,AXMOV SI,OFFSET CHAR1 ;LEA SI,CHAR1MOV DI, OFFSET CHAR2 ;LEA DI,CHAR2MOV CX,NCLD ;不写(隐含)也是0(递增)但不能STDAGAIN: LODSB ;执行一次,隐含修改SISUB AL,32STOSB ;MOV [DI],AL;执行一次, 隐含修改DI INC DILOOP AGAIN ;LOOP指令只修改CX,不管SI,DIMOV AH,4CHINT 21H ;不是必须的C ENDSEND START第四种方法2006级,没有显示使用MOVSB指令D SEGMENTCHAR1 DB "abcdefghijklmnopqrstuvwxyz"N EQU $-CHAR1CHAR2 DB N DUP(0)D ENDSS SEGMENT STACKDB 200 DUP(0)S ENDSC SEGMENTASSUME CS:C,DS:D,SS:SSTART:MOV AX,DMOV DS,AXMOV ES,AXLEA SI,CHAR1LEA DI,CHAR2MOV CX,NAGAIN:MOVSB ; SUB [SI],20HDEC DI ; MOVSBSUB BYTE PTR[DI],20H ;LOOP AGAIN 错在哪里?结果如何?INC DILOOP AGAINMOV AH,4CHINT 21HC ENDSEND START方法5: 只用一个地址指针SID SEGMENTCHAR1 DB "abcdefghijklmnopqrstuvwxyz"N EQU $-CHAR1CHAR2 DB N DUP(0)D ENDSS SEGMENT STACKDB 200 DUP(0)S ENDSC SEGMENTASSUME CS:C,DS:D,SS:SSTART:MOV AX,DMOV DS,AXMOV ES,AXMOV SI,0MOV CX,NAGAIN:MOV AL,CHAR1[SI] ;只用一个地址指针,SI[CHAR1]是错误的SUB AL,20HMOV CHAR2[SI],ALINC SILOOP AGAINint 3MOV AH,4CHINT 21HC ENDSEND START有的同学按数据是由键盘录入的来考虑的,也可行,程序中还有不少问题方法6:由键盘输入小写字母再转换输出,回车符也占一个字节,输入需要小写转换成大写字母的内容从输入串的第3个元素开始D SEGMENTA DB"CHAR1",0DH,0AH,"$"B DB"CHAR2",0DH,0AH,"$"CHAR1 DB 11,?,11 DUP(0);准备输入10个小写字母CHAR2 DB 10 DUP(0)D ENDSS SEGMENT STACKDB 200 DUP(0)S ENDSC SEGMENTASSUME CS:C,DS:D,SS:SSTART:MOV AX,DMOV DS,AXMOV ES,AXMOV DX,OFFSET AMOV AH,9INT 21HLEA DX,CHAR1MOV AH,0AHINT 21H ;由键盘输入字符串,10个字母(显示),1个回车,共11个字节LEA SI,CHAR1[2]LEA DI,CHAR2MOV CX,10 ;需要转换的字符长度为10个字节AGAIN:MOV AL,[SI]SUB AL,20HMOV [DI],ALINC SIINC DILOOP AGAIN ; 将小写字母字符串转换成大写字母字符串MOV BYTE PTR[DI],0DHINC DIMOV BYTE PTR[DI],0AHINC DIMOV BYTE PTR[DI],'$' ;必须指明数据类型MOV DX,OFFSET CHAR2MOV AH,9INT 21H ;输出'$'结尾的大写字母字符串int 3MOV AH,4CHINT 21HC ENDSEND START4-6在BUF地址处起,存放有100个字节的字符串,设其中有一个以上的“A”字符,编程查找出第一个“A”字符相对起始地址的距离,并将其存入LEN单元。

微机原理第4章练习题及答案

微机原理第4章练习题及答案

微机原理第4章练习题及答案第4章80某86指令系统一、自测练习题㈠选择题1.MOVA某,[B某+SI]的源操作数的物理地址是()。

A.(DS)某16+(B某)+(SI)B.(ES)某16+(B某)+(SI)C.(SS)某10H+(B某)+(SI)D.(CS)某10H+(B某)+(SI)2.MOVA某,[BP+Sl]的源操作数的物理地址是()。

A.(DS)某10H+(BP)+(SI)A.(ES)某16+(BP)+(SI)C.(SS)某16+(BP)+(SI)D.(CS)某10H+(BP)+(SI)3.MOVA某,ES:[B某+SI]的源操作数的物理地址是()。

A.(DS)某16+(B某)+SI)B.(ES)某10H+(B某)+(SI)C.(SS)某10H+(B某)+SI)D.(CS)某16+(B某)+(SI)4.JMPWORDPTR[DI]是()。

A.段内间接转移B.段间间接转移C.段内直接转移D.段间直接转移5.JMPFARPTRBlOCK(BLOCK是符号地址)是()。

A.段内间接转移B.段间间接转移C..段内直接转移D.段间直接转移6.INC指令不影响()标志。

A.OFB.CFC.SFD.ZF7.条件转移指令JNE的测试条件是()。

A.ZF=1B.CF=0C.ZF=0D.CF=18.下列指令中,有语法错误的是()。

A.MOV[SI],[DI]B.INAL,D某C.JMPWORDPTR[B某+8]D.PUSHWORDPTR20[B某+S1]9.假定(SS)=2000H,(SP)=0100H,(A某)=2107H,执行指令PUSHA某后,存放数据21H的物理地址是()。

A.20222HB.20221HC.200FEHD.200FFH10.对于下列程序段:AGAIN:MOVAL,[SI]MOVES:[DI],ALINCSIINCDILOOPAGAIN也可用指令()完成同样的功能。

A.REPMOVSBB.REPLODSBC.REPSTOSBD.REPESCASB11.对于下列程序段:AGAIN:MOVES:[DI],ALINCDILOOPAGAIN可用指令()完成。

微机原理及其应用课后答案(配套清华大学出版社,主编钱晓捷)

微机原理及其应用课后答案(配套清华大学出版社,主编钱晓捷)

“微机原理与接口技术”习题解答第1章微型计算机系统〔习题1.1〕简答题〔解答〕①处理器每个单位时间可以处理的二进制数据位数称计算机字长。

②总线信号分成三组,分别是数据总线、地址总线和控制总线。

③PC机主存采用DRAM组成。

④高速缓冲存储器Cache是处理器与主存之间速度很快但容量较小的存储器。

⑤ROM-BIOS是“基本输入输出系统”,操作系统通过对BIOS的调用驱动各硬件设备,用户也可以在应用程序中调用BIOS中的许多功能。

⑥中断是CPU正常执行程序的流程被某种原因打断、并暂时停止,转向执行事先安排好的一段处理程序,待该处理程序结束后仍返回被中断的指令继续执行的过程。

⑦主板芯片组是主板的核心部件,它提供主板上的关键逻辑电路。

⑧MASM是微软开发的宏汇编程序。

⑨指令的处理过程。

处理器的“取指—译码—执行周期”是指处理器从主存储器读取指令(简称取指),翻译指令代码的功能(简称译码),然后执行指令所规定的操作(简称执行)的过程。

⑩机器语言层,即指令集结构。

(学生很多认为是:汇编语言层。

前4章主要涉及汇编语言,但本书还有很多处理器原理等内容)〔习题1.2〕判断题①错②错③对④错⑤对⑥错⑦错⑧对⑨错⑩错〔〔解答〕①Central Processing Unit,中央处理单元,处理器②1MB,4GB③216,64KB④EXE,COM(BAT老师讲的)⑤Instruction Set Architecture⑥目录⑦MMX,SSE3⑧64⑨IBM,DOS⑩PCI〔习题1.4〕说明微型计算机系统的硬件组成及各部分作用。

〔解答〕CPU:CPU也称处理器,是微机的核心。

它采用大规模集成电路芯片,芯片内集成了控制器、运算器和若干高速存储单元(即寄存器)。

处理器及其支持电路构成了微机系统的控制中心,对系统的各个部件进行统一的协调和控制。

存储器:存储器是存放程序和数据的部件。

外部设备:外部设备是指可与微机进行交互的输入(Input)设备和输出(Output)设备,也称I/O设备。

《微机原理及应用》各章习题参考答案

《微机原理及应用》各章习题参考答案

《微机原理及应用》各章习题参考答案第1章微型计算机概论一、填空题1. 微机硬件系统主要由CPU、(存储器)、(总线)、(输入输出接口)和输入输出设备组成。

2. 冯·诺依曼计算机的核心原理是(存储程序原理)3. 完成下列数制的转换1)10100110B=( 166 )D=( A6H )H2)223.25 =( 11011111.01 )B=( DF.4 )H3)1011011.101B=( 5B.A )H=(1001 0001.01100010 0101 )BCD4. 已知[X]补5. 已知A=10101111,B=01010000,则A∧B的结果为( 00000000 ) B=86H,则X的十进制表示形式为( -122 )6. -29H的8位二进制反码是(11010110 )B7.字符4的ASCII码=( 34 )H二、简答题1.冯.诺依曼计算机的结构是怎样的,主要特点有哪些?解:将计算机设计为由运算器、控制器、存储器、输入设备和输出设备等5个部分组成,所有的执行都以运算器为核心,采用存储程序工作原理。

2. 已知X=-1101001B,Y=-1010110B,用补码方法求X-Y=?解:[X-Y]补=[X+(-Y)]补= [X]补+[-Y] [X]补原=11101001B [X]补 [-Y]=10010111B原=01010110B=[-Y] [X-Y]补补= [X]补+[-Y]补X-Y=[[X-Y]=11101101B补]补=10010011=-0010011=-193. 写出下列真值对应的原码和补码的形式:1)X=-1110011B2)X=-713)X=+1001001B解:1)[X]原码=11110011B , [X]补码=10001101B2)[X]原码=11000111B, [X]补码=10111001B3)[X]原码=01001001, [X] 补码=01001001B=?4. 已知X和Y的真值,求[X+Y]补1)X=-1110111B Y=+1011010B2)X=56 Y=-215. 若与门的输入端A、B、C的状态分别为1、0、1,则该与门的输出端状态为?若将这3位信号连接到或门,那么或门的输出又是什么状态?解:由与和或的逻辑关系知,若“与”门的输入端有一位为“0”,则输出为“0”;若“或”门的输入端有一位为“1”,则输出为“1”。

微机原理与接口技术 第四章 课后答案

微机原理与接口技术 第四章 课后答案

第四章参考答案1.设下列指令中的所有标识符均是类型属性为字的变量,请指出下列指令中哪些是非法的指令?错误的原因?⑴MOV BP,AL⑵MOV WORD_OP1,WORD_OP2⑶MOV SA VE_WODR,DS⑷MOV SP,SS:DA TA_WORD[BX][SI]⑸MOV [BX][SI],2解:(1)非法。

源操作数与目的操作数类型不符。

(2)合法。

(3)合法。

(4)合法。

(5)非法。

需说明操作数类型。

2.设V AR1和V AR2为字变量,LAB为标号,试指出下列指令的错误之处:⑴ADD V AR1,V AR2⑵SUB AL,V AR1⑶JMP LAB[SI]⑷JNZ V AR1⑸JMP NEAR LAB解:(1)两个操作数均为符号地址。

(2)两个操作数的类型不同。

(3)(4)(5)3.画图说明下列语句所分配的存储空间及初始化的数据值。

⑴BYTE_V AR DB ‘BYTE’,12,-12H,3 DUP(0,?,2 DUP(1,2),?)⑵WORD_V AR DW 5 DUP(0,1,2),?,-5 ‘BY’,’TE’,256H解:(1)(2)41H59H54H45H0CHF4H00H?01H02H01H02H00H?01H02H01H02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H ??FBH FFH 59H 42H 45H 54H 56H 02H4.设程序中的数据定义如下:PARTNO DW ?PNAME DB 16 DUP(?)COUNT DD ?PLENTH EQU $-PARTNO问PLENTH的值为多少?它表示什么意义?解:PLENTH的值为22(16H)。

表示当前位置与PARTNO之间有22个字节空间。

微机原理第4章习题与答案

微机原理第4章习题与答案
(2)PRGM SEG
……
PRGM ENDS
(3)ALPHA EQU BETA
(4) COUNT EQU 100
COUNT EQU 65
(5) GOON DW 10DUP(?)
……
JMP GOON
答案:
(1)字节变量,范围在0~255
(2)定义段的伪指令为SEGMENT
(3)BETA必须先定义
(4)EQU不能重复定义,在下一次定义前必须用PURGE撤消
MOV BX, F1
答案:
(1)
DATA SEGMENT PARA 'DATA' AT 46H
QA EQU 255;QA=255
QA1=QA GT 3000;255大于3000,命题假,QA1=0
QA2=0FFFH;QA2=0FFFH
QA3 EQU QA2 XOR 255;QA3=0FFFH⊕0FFH=0F00H
AND AX, 0FFH;AX=0045H
MOV BX, WORD PTR G1;BX=0FF20H
MOV BX, 255 AND 0FH;BX=000FH
ADD AX, OFFSET F2;AX=1245H
MOV BX, F1;BX=2211H
4.以下程序的执行结果是_______。
ADB‘1234’
BDW5 DUP(2,3 DUP(0))
CDW‘AB’,’C’,’D’
L1:MOVAL,TYPE B
MOVBL,LENGTHB
MOVAH,SIZE A
MOVBH,SIZE C
MOVCL,TYPEL1
MOVCH,SIZEB
答案:AX=0102H,BX=0205HCX=0AFFH

微机原理及应用参考答案

微机原理及应用参考答案

参考答案第一章计算机中的数制和码制第二章计算机概述一、填空题1.82. 23.10244.25.5、11001.1、00100101.0101B5.1000010B、42H、66H6.41.625、29.AH7.10001101B8.11001001、110010109.-128 ~ +12710.系统软件、应用软件11.电子管、超大规模集成电路二、单选题1. A 2. C 3. D4. C 5. A 6. C三、分析简答题1.8086 CPU的总线根据其中信息传送的类型可分为几种?哪几种?答:8086 CPU的总线根据其中信息传送的类型可分为三种种,分别是:数据总线、地址总线和控制总线2.写出-25的原码、反码、补码,并将补码转换成十六进制数(设机器字长为8位)。

答:X=-25=-11001BX原码:10011001BX反码:11100110BX补码:11100111B = E7H3.举例说明什么是机器数,什么是真值?答:将符号数值化了的数称为机器数。

如:-18=-10010B(真值);机器数为:10010010B第三章半导体存贮器一、填空题1.ROM、RAM2.6个3.8、4二、单选题1. A 2. B 3. D 4. B5. C 6. C 7. B三、分析简答题1.在对存储器芯片进行片选时,全译码方式、部分译码方式和线选方式各有何特点?答:①全译码方式:存储器芯片中的每一个存储单元对应一个唯一的地址。

译码需要的器件多;②部分译码方式:存储器芯片中的一个存储单元有多个地址。

译码简单;③线选:存储器芯片中的一个存储单元有多个地址。

地址有可能不连续。

不需要译码。

四、硬件接口设计题1.答:(1)(2) 存储器类型为RAM 总容量为4K×8地址范围: 0#2000H-27FFH1# 2800H-2FFFH2.答:(9分)(1)存储器类型:RAM该系统的存储器容量为:6K×8位(或:6K字节)(2)1#芯片的地址范围:1000H ~ 17FFH2#芯片的地址范围:0800H ~ 0FFFH3#芯片的地址范围:0000H ~ 07FFH3.1)1K×42)2K×8或2KB3)地址分配范围第一组:A19~ A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0最小地址0 ~ 0 0 0 0 0 0 0 0 0 0 0 00000H~ 最大地址0 ~ 0 1 1 1 1 1 1 1 1 1 1 003FFH 第二组:0 ~ 1 0 0 0 0 0 0 0 0 0 0 00400H~0 ~ 1 1 1 1 1 1 1 1 1 1 1 007FFH第四章微型计算机及微处理器的结构和组成一、填空题1.BIU、EU、指令的译码和指令执行2.4、16、16、6、203.8、164.1、2二、单选题1. B 2. B三、分析简答题1.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。

《微机原理及应用》教材课后习题及答案(5篇范例)

《微机原理及应用》教材课后习题及答案(5篇范例)

《微机原理及应用》教材课后习题及答案(5篇范例)第一篇:《微机原理及应用》教材课后习题及答案《微机原理及应用》习题答案第一章ν1.11 请完成下列数制转换:(1)将174.66D转换为对应的二进制和十六进制形式。

(2)将100011101011.01011B转换为对应的十进制和十六进制形式。

(3)将F18A6.6H转换为对应的二进制和十进制形式。

答:174.66D=10101110.1010B=AE.AH100011101011.01011B=2283.34375D=8EB.58HF18A6.6H=989350.375Dν1.12 请写出与数据+37和-37对应的8位机器数原码、反码和补码,并分别用二进制和十六进制表示出来。

答:-37D=(10100101B)原=(11011010B)反=(11011011B)补ν1.13 8位机器数46H,若作为无符号数和补码有符号数,其对应的真值各是什么?若作为BCD码和ASCII码,其对应的又是什么?答:无符号数46H=70,补码46H=+70BCD码46H=46,ASCII码46H=“F”第二章λ2.5什么是8088中的逻辑地址和物理地址?逻辑地址如何转换成物理地址?1MB最多能分成多少个逻辑段?请将如下逻辑地址用物理地址表达:(1) FFFFH:0H (2) 40H:17H (3) 2000H:4500H(4) B821H:4567H 答:⑴ FFFFH:0H = FFFF0H⑵ 40H:17H = 00417H⑶ 2000H:4500H = 24500H⑷ B821H:4567H = BC777H λ2.8已知DS=2000H,BX=0100H,SI=0002,存储单元[20100H]~[20103H]依次存放12H,34H,56H,78H,[21200H]~[21203H]依次存放2AH,4CH,87H,65H,说明下列每条指令执行完后AX寄存器的内容以及源操作数的寻址方式?答:⑴ AX=1200H,立即数寻址;⑵ AX=0100H,寄存器寻址;⑶ AX=4C2AH,直接寻址;⑷ AX=3412H,寄存器间接寻址;⑸ AX=4C2AH,寄存器相对寻址;⑹ AX=7865H,基址变址寻址;⑺ AX=65B7H,基址变址相对寻址。

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

4.5 编程求AX累加器和BX寄存器中两个无符 号数之差的绝对值,结果放内存(2800H) 单元中。
解法一: SUB AX,BX JNC OK ADD AX,BX MOV AX,BX OK:MOV [2800H],AX 解法二: SUB AX,BX AX BX JNC OK NEG AX OK:MOV [2800H],AX
解:
(1) 按内存单元存放的先后次序, 按内存单元存放的先后次序,按 先后次序 字节写出数据段中的数据: 字节写出数据段中的数据: 写出数据段中的数据
05H, 00H, 08H, 00H, 08H, 00H, 05H, 00H, 08H, 00H, 08H, 00H, 05H, 00H, 08H, 00H, 08H, 00H, 57H, 65H, 6CH, 63H, 6FH, 6DH, 65H, 20H, 74H, 6FH, 20H, 79H, 6FH, 75H, 0DH, 0AH, 24H, 00H, 00H LENGTH 3 SIZE 6 1 1 1 2 TYPE
4.25 编写一个带符号数四则运算的程序,完成(Z-(X*Y+100))/1000 编写一个带符号数四则运算的程序,完成( ) 的运算,商送V单元 余数送W单元 单元, 单元。 , , 均为带符号数 均为带符号数, 的运算,商送 单元,余数送 单元。X,Y,Z均为带符号数,设: X=FFF0H=-16,Y=0008H=8,Z=007F=127。 , , 。 DATA SEGMENT X DW 0FFF0H Y DW 8 Z DW 7FH V DW ? W DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA , START: MOV AX, DATA , MOV DS,AX , MOV AX,X , IMUL Y ;AX*Y→DX:AX ADD AX ,100 ADC DX,0 位字长的100相加 , ;DX:AX与32位字长的 相加 与 位字长的
4.23 编写一个将5位BCD码数(小于65536)转换成二 编写一个将 位 码数(小于 ) 码数 进制数的程序。
DATA SEGMENT BCD DB 7,4,3,0,5 , , , , ;BCD=50347 HEX DW 0 DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA , START: MOV AX, DATA , MOV DS,AX , LEA BX,BCD , MOV AL,[BX+4] ;万位数 , 万位数 MOV AH,0 , MOV CX,10000 , MUL CX 必为0 ; AX*CX→DX:AX,DX 必为 , ADD HEX,AX 必为0 , ;HEX+AX → AX,CF必为 , 必为
MOV [BX+2],AL ,
DATA SEGMENT HEX DB 9A48H BCD DB 5 DUP(?) DATA ENDS STACK SEGMENT DB 256 DUP (?) TOP LABEL WORD STACK ENDS CODE SEGMENT
; 解法二
ASSUME CS:CODE, DS:DATA, SS:STACK , , START: MOV AX, DATA , MOV DS,AX , MOV AX,STACK , MOV SS,AX , MOV SP,OFFSET TOP ,
MOV CX,AX , MOV BX,DX , MOV AX,Z , CWD SUB AX ,CX SBB DX,BX , MOV BX,1000 , IDIV BX MOV V,AX , MOV W,DX , HLT CODE ENDS END START
余数→DX ;DX:AX÷SI→AX, 余数 ÷ ;保存商 ;保存余数 ;将AX(即:Z)的符号位扩展到 ( )的符号位扩展到DX
AX,HEX , MOV SI, 10 MOV CX,5 , LP1:MOV DX,0 , DIV SI MOV [BX],DL , INC BX LOOP LP1 HLT CODE ENDS END START
;DX:AX÷SI→AX, 余数→DX ÷ 余数 ;第一次保存的是个位数
4.26 从BUF单元开始有 个带符号数:-1,3,248,90,42,9042, 单元开始有10个带符号数 单元开始有 个带符号数: , , , , , , -4539,0,-28,792。试找出它们的最大值、最小值和平均值,并分别送 , , , 。试找出它们的最大值、最小值和平均值, 单元。 MAX、MIN和AVG单元。试编写完整的汇编语言程序 、 和 单元 DATA SEGMENT BUF DW -1,3,248,90,42,9042,-4539,0,-28,792 , , , , , , , , , MXA DW -32768 MIN DW 32767 AVG DW 0 DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, SS:STACK , , START: MOV AX, DATA , MOV DS,AX ,
4.19 指出以下四条指令的作用(HEX为数据段的 一个变量名)
⑴ MOV BX,HEX; ⑵ LEA BX,HEX ; 取变量 HEX的内容→BX 内容 取变量 HEX的有效地址→BX 有效地址
⑶ MOV BX,OFFSEG HEX; 取变量 HEX的偏移量→BX 偏移量 ⑷ MOV BX,SEG HEX; 取变量 HEX的段地址→BX 段地址
MOV MOV MOV MOV DIV MOV MOV MOV MOV DIV MOV MOV MOV DIV
BX,OFFSET BCD , AX,HEX , DX,0 , CX,10000 , CX ;DX:AX÷CX→AX, ÷
余数→DX ; 余数
MOV AL,AH , MOV AH,0 , MOV CL,10 , DIV CL
4.2 指出下列指令是否有错,并说明理由。 (1)MOV [DI],[SI] ) , (2)MOV CS,AX ) , (3)MOV 1200,AX ) , (4)MOV DS,CS ) , (5)POP CS ) (6)MOV CL,AX ) , 7) [5000H], (7)MOV [5000H],[1000H] 4.3 在8086中,堆栈操作是字操作还是字节 字节操作?已知SS=1050H, 字 字节 SP=0006H,AX=1234H,若对AX执行压栈操作(即执行PUSH AX); 试问AX的内容存放在何处? 的内容存放到10504H字单元,即: 字单元, 答:是字操作; AX的内容存放到 操作; 的内容存放到 字单元 12H→(10505H);34H →(10504H) ;
4.20 下面是变量定义伪指令, DATA SEGMENT BUF DW 3 DUP(5,2 DUP(8)) CED DB ‘Welcome to you’,0DH,0AH,‘$’ ADDR DW BUF COUNT EQU $-CED DATA ENDS 问:⑴ 按内存单元存放的先后次序,按字节写出数据段中的数据 ⑵ 说明对BUF,CED,ADDR等变量施行TYPE,LENGTH, SIZE运算后,其结果分别为多少? ⑶ COUNT的值为多少?
;是当前较大 ;的数吗? 的数吗?
ADD SI,AX , ADC DI,DX , ADD BX,2 , LOOP NEXT MOV BX,10 , MOV AX,SI , MOV DX,DI ,
;求累加和
;指向下一个数
;计算平均值
;是当前较小 ;的数吗? 的数吗?
IDIV BX MOV AVG,AX , HLT CODE ENDS END START
4.7 用两种方法写出从88H端口读入信息的指令,再用两种方 法写出从44H端口输出数据56H的指令。 解:从88H端口读入信息 (1)IN AL,88H 解:从44H端口输出56H (1)MOV AL,56H OUT 44H,AL (2) MOV DX,88H IN AL,DX (2) MOV AL,56H MOV DX,44H OUT DX,AL
;十位数 十位数 ;个位数 个位数
[BX+4],AL ;万位数 AH必为 , 万位数, 必为0 必为 AX,DX , DX,0 , CX,1000 , CX [BX+3],AL , ; 千位数 AX,DX , CL,100 , CL ;AX÷CL→AL, ÷
;余数→AH 余数 ; 百位数
MOV [BX+1],AL , MOV [BX],AH , HLT CODE ENDS END START
4.6 若有两个4字节的无符号数相加,这两个数分别存放在 2000H和3000H开始的存储单元,将所求的和存放在2000H 开始的内存单元中,试编制程序。 解法一: 解法一: MOV BX , 3000H MOV DI , 2000H MOV AX , [ BX ] MOV DX , [ BX+2 ] ADD [ DI ] , AX ADC [ DI+2] , DX 解法二: 解法二: MOV AX , [ 3000H ] MOV DX , [3002H ] ADD [ 2000H] , AX ADC [ 2002H] , DX
L2: CWD MOV BX,OFFSET BUF , MOV CX,10 , MOV SI,0 , MOV DI,0 , NEXT: MOV AX,[BX] ;取一个数 , CMP AX,MAX , JNG L1 MOV MAX,AX , L1: CMP AX,MIN , JNL L2 MOV MIN,AX ,
(2)
BUF CED ADDR 2 1 2
(3) COUNT = $-CED = 19
4.22 编写一个将 位二进制数转换成 编写一个将16位二进制数转换成 位二进制数转换成BCD码数的程序。 码数的程序。 码数的程序
相关文档
最新文档