汇编与接口 第七章作业
操作系统第七章参考答案
第七章参考答案1、操作系统为用户提供的接口有:作业级接口与程序级接口。
作业级接口:操作系统为用户对作业运行全过程控制提供的功能(1) 联机接口(交互式)(2) 脱机接口程序级接口:系统为用户在程序一级提供有关服务而设置,由一组系统调用命令组成•负责管理和控制运行的程序•并在这些程序与系统控制的资源和提供的服务间实现交互作用•用汇编语言:在程序中直接用系统调用命令•用高级语言:可在编程时使用过程调用语句2、接口包括3部分:一组联机命令,终端处理程序,命令解释程序3、联机命令通常有以下几类:(1)系统访问类,包括Login、Password等命令;(2)磁盘操作类,包括Format,Diskcopy,Diskcomp,Bakeup等命令;(3)文件操作类,包括Type、Copy、Comp、Rename、Del等命令;(4)目录操作类,包括Mkdir、dir、rmdir、tree、chdir等命令;(5)通信类;(6)其它命令(见书P222-223)。
4、I/O重定向—用于I/O操作的设备可以更换(即重定向)而不必改变应用程序。
例如:我们正在调试一个应用程序,可将程序的所有输出送到屏幕;而程序调试后,如果需要将程序的结果进行打印,此时需要将I/O重定向的数据结构—逻辑设备表中的显示终端改为打印机,而不修改程序。
I/O重定向具有很大的使用价值,现已经被广泛应用在各种OS 中。
(在UNIX与DOS中有具体的实现形式,可见P230)。
5、就是把第一个命令的输出作为第二个命令的输入;类似地,又把第二个命令的输出作为第三个命令的输入;这样,就由两条已上的命令形成一条管道。
在DOS与UNIX中用“|”作为管道符号。
其格式为 command1| command2| command3|…. commandn 6、见书P22311、COPY命令13、系统调用方式与程序中一般的调用方式的相同点:(1)改变指令流程;(2)重复执行和公用;(3)改变指令流程后需要返回原处系统调用方式与程序中一般的调用方式的不同点:(1)运行在不同的系统状态:一般过程调用,其调用程序和被调用程序都运行在相同状态(核心态或用户态);系统调用:调用程序在用户态,被调用程序在系统态。
接口作业
作业1(第二章)1、8086系统中,设段寄存器CS=1200H,指令指针寄存器IP=FF00H,此时指令的物理地址为多少,指向此地址的CS和IP值是唯一的吗?2、T1状态下,8086的数据/地址线上是什么信息,用哪个信号将此信息锁存起来4、若CS=A000H,求当前代码段在存储器中的物理地址范围是什么?若数据段位于52000H 到61FFFH的64K范围内,问DS=?5、若当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址,若此时入栈10个字节,SP内容是什么?若再出栈6个字节,SP为什么值?6、某程序数据段中存放了两个字,1EE5H和2A8CH,已知(DS)=7850H,数据存放的偏移地址为3121H及285AH。
试画图说明它们在存储器中的存放情况,若要读取这两个字,需要对存储器进行几次操作?作业2:(第五章)1、某一个微机系统中,有8块I/O接口芯片,每个芯片占有8个端口地址,若起始地址为9000H,8块芯片的地址连续分布,用74LS138作译码器,试画出端口译码电话,并说明每块芯片的端口地址范围。
作业3:(第七章)1、已知:SP=0100H、SS=0500H、PSW=0240H,在存储单元中已有内容为(00024)=0060H、(00026H)=1000H,在(0800H:00A0H)中有中断指令INT 9。
试问,执行INT 9指令后,SS、SP、CS、IP、PSW的内容是什么?栈顶的三个字是什么?2、中断向量指什么,放在哪里?,对应8086的1CH的中断向量存放在哪里,如果1CH的中断处理程序从5110H:2030H开始,则中断向量应怎样存放?3、假如外设A1、A2、A3、A4、A5按优先级排列,外设A1优先级最高,按下列提问,说明中断处理的运行次序,(中断服务程序中有STI指令)(1)外设A3,A4同时发中断请求;(2)外设A3中断处理中,外设A1发中断请求;(3)外设A1中断处理未完成前,发出EOI结束命令,外设A5发中断请求。
计算机组成与汇编第7章课后答案蔡启先版
1.实现W=(3X+6Y)*4-8Z,设X=5, Y=3, Z=19解:源程序如下:DSEG SEGMENTX DB 5Y DB 3Z DB 19W DW ?DSEG ENDSCSEG SEGMENTASSUME CS:CSEG, DS:DSEGMOV AX, DSEGMOV DS, AXBEGIN: MOV AL, XMOV BL, ALSHL AL, 1ADD AL, BL ; AL=3XMOV BL, YSHL BL, 1MOV BH, BLSHL BL, 1ADD BL, BH ; BL=6YADD AL, BL ; AL=(3X+6Y)MOV BL, 4MUL BL ; AX=(3X+6Y)*4MOV BX, AX ; BX=(3X+6Y)*4MOV AL, ZMOV CL, 8MUL CL ; AX=8ZSUB BX, AX ; BX=(3X+6Y)*4-8ZMOV W, BXMOV AH, 4CHINT 21HCSEG ENDSEND START2.将存储单元DAT中的两个压缩的BCD码拆成两个非压缩的BCD码(高位BCD码放在 DAT+1单元,低位BCD码放在DAT+2单元)。
解:源程序如下:DATA SEGMENTDAT DB 0A5H, 2 DUP(?)DATA ENDSCODE SEGMENTASSUME CS: CODE, DS:DATASTART: MOV AX, DATAMOV DS, AXMOV AL, DAT ; 取被操作数MOV BL, AL ; 备份操作数MOV CL, 4 ; 设置准备移动的位数SHR BL, CL ; 取操作数的高 4 位MOV DAT+1, BL ; 将高 BCD 数存入 dat+1AND AL, 0FH ; 取操作数的低 4 位MOV DAT+2, AL ; 将低 BCD 数存入 dat+2MOV AH, 4CHINT 21HCODE ENDSEND START3. 试编程实现下式(设字单元X和Y都是无符号数):2X+8 ( X>100 )Y=X+1 ( X<=100 )解:源程序如下:DATA SEGMENTX DW 100HY DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV AX,XCMP AX, 100JBE BE1ADD AX, AXADD AX, 8JMP RSTBE1:INC AXRST:MOV Y, AXMOV AH,4CHINT 21HCODE ENDSEND START4.对字节单元TAB中的三个有符号数据进行排序,使低地址单元数据最小,高地址单元数据最大。
微机原理与接口技术第七章课后答案
微机原理与接口技术第七章课后答案1、 Keil uVision 5集成开发环境中,钩选“creat Hex File”复选框后,默认状态下的机器代码文件名与()相同。
[单选题] *A、项目名(正确答案)B、文件名C、项目文件夹名D、主函数名2、 Keil uVision 5集成开发环境中,编译生成的机器代码文件的后缀名为() [单选题] *A、.mifB、.asmC、 .hex(正确答案)D、 .uvproj3、累加器与扩展RAM进行数据传送,采用的助记符是() [单选题] *A、MOVB、 MOVCC、MOVX(正确答案)D、 XCH4、对于高128字节,访问时采用的寻址方式是() [单选题] *A、直接寻址B、寄存器间接寻址(正确答案)C、变址寻址D、立即数5、对于特殊功能寄存器,访问时采用的寻址方式是() [单选题] *A、直接寻址(正确答案)B、寄存器间接寻址C、变址寻址D、立即数6、对于程序存储器,访问时采用的寻址方式是() [单选题] *A、直接寻址B、寄存器间接寻址C、变址寻址(正确答案)D、立即数7、定义变量x为8位无符号数,并将其分配的程序存储空间,赋值100,正确的是() [单选题] *A、unsigned char code x=100;(正确答案)B、 unsigned char data x=100;C、 unsigned char xdata x=100;D、 unsigned char bdata x=100;8、当执行P1=P1&0xfe;程序时相当于对P1.0进行()操作,不影响其他位。
[单选题] *A、置1B、清零(正确答案)C、取反D、不变9、当执行P2=P2|0x01;程序时相当于对P2.0进行()操作,不影响其他位 [单选题] *A、置1(正确答案)B、清零C、取反D、不变10、当执行P3=P3^0x01;程序时相当于对P3.0进行()操作,不影响其他位 [单选题] *A、置1B、清零C、取反(正确答案)D、不变11、当(TMOD)=0x01时,定时/计数器T1工作于方式()状态 [单选题] *A、0,定时(正确答案)B、 0,计数C、 1,定时D、 1,计数12、当(TMOD)=0x00时,T0X12为1时,定时时/计数器T0计数脉冲是() [单选题] *A、系统时钟;(正确答案)B、系统时钟的12分频信号;C、P3.4引脚输入信号;D、 P3.5引脚输入信号13、当(IT0)=1时,外部中断0触发的方式是() [单选题] *A、高电平触发;B、低电平触发;C、下降沿触发(正确答案)D、上升沿/下降沿触皆触发14、 IAP15W4K58S4单片机串行接口1在工作方式1状态下工作时,一个字符帧的位数是() [单选题] *A、8B、 9C、 10(正确答案)D、1115、当(SM1)=1,(SM0)=0时,IAP15W4K58S4单片机的串行接口工作方式为()[单选题] *A、工作方式0B、工作方式1(正确答案)C、工作方式2D、工作方式316、 IAP15W4K58S4单片机的A/D转换模块中转换电路的类型是() [单选题] *A、逐次比较型(正确答案)B、并行比较型C、双积分型D、Σ-Δ型17 IAP15W4K58S4单片机的A/D转换的8个通道是在()口 [单选题] *A、P0B、 P1(正确答案)C、 P2D、P318、IAP15W4K58S4单片机的PWM计数器是一个()位的计数器。
微型计算机原理与接口技术第七章课后答案
第七章1. 什么叫中断?什么叫可屏蔽中断和不可屏蔽中断?答:当CPU正常运行程序时,由于微处理器内部事件或外设请求,引起CPU中断正在运行的程序,转去执行请求中断的外设(或内部事件)的中断服务子程序,中断服务程序执行完毕,再返回被中止的程序,这一过程称为中断。
可屏蔽中断由引脚INTR引入,采用电平触发,高电平有效,INTR信号的高电平必须维持到CPU响应中断才结束。
可以通过软件设置来屏蔽外部中断,即使外部设备有中断请求,CPU可以不予响应。
当外设有中断申请时,在当前指令执行完后,CPU首先查询IF位,若IF=0,CPU就禁止响应任何外设中断;若IF=1,CPU就允许响应外设的中断请求。
不可屏蔽中断由引脚NMI引入,边沿触发,上升沿之后维持两个时钟周期高电平有效。
不能用软件来屏蔽的,一旦有不可屏蔽中断请求,如电源掉电等紧急情况,CPU必须予以响应。
2. 列出微处理器上的中断引脚和与中断有关的指令。
答:INTR:可屏蔽中断请求输入引脚。
NMI:不可屏蔽中断请求输入引脚INTA:可屏蔽中断响应引脚INT n :软件中断指令,其中n为中断类型号INTO:溢出中断,运算后若产生溢出,可由此指令引起中断。
CLI:中断标志位IF清0STI:置位中断标志位为13. 8086/8088系统中可以引入哪些中断?答:(1)外部中断两种外部中断:不可屏蔽中断NMI和可屏蔽中断INTR(2)内部中断内部中断又称软件中断,有三种情况引起:①INT n :中断指令引起的中断②CPU的某些运算错误引起的中断:包括除法错中断和溢出中断③由调试程序debug设置的中断:单步中断和断点中断。
4. CPU响应中断的条件是什么?简述中断处理过程。
答:CPU响应中断要有三个条件:外设提出中断申请;本中断位未被屏蔽;中断允许。
可屏蔽中断处理的过程一般分成如下几步:中断请求;中断响应;保护现场;转入执行中断服务子程序;恢复现场和中断返回。
CPU在响应外部中断,并转入相应中断服务子程序的过程中,要依次做以下工作:⑴从数据总线上读取中断类型号,将其存入内部暂存器。
汇编语言程序设计_第7章 输入输出程序设计(参考答案)
第7章输入/输出程序设计
本章要点: CPU与外设交换数据的3种方法,查询传送方式,中断传送方式,中断向量表的使用,以及中断程序设计的基本方法,直接使用IN/OUT指令进行I/O程序设计。
一、单项选择题
7.1.1 执行“INT 10H”指令时,其中断处理程序的入口地址在(D)。
A. 10H~13H
B. 20H~23H
C. 30H~33H
D. 40H~43H
7.1.2 执行“INT 10H”指令时,入栈的内容有(D)。
A. CS、IP
B. PSW、IP
C. PSW、CS
D. PSW、CS、IP
三、简答题
7.3.1 写出分配给INT 8的中断向量在中断向量表中的物理地址。
_20H~23H单元中__ 7.3.2 中断类型号为14H的中断向量在存储器的哪些单元中?_0:50H~0:53H四单元中_ 7.3.3 写出指令将一个字节数据输出到端口25H。
_OUT 25H,AL_________________ 7.3.4 写出指令将一个字数据从端口1000H输入。
_MOV DX,1000H____IN AL,DX__。
微型计算机原理与接口技术第七章课后答案全文
第七章1. 什么叫中断?什么叫可屏蔽中断和不可屏蔽中断?答:当CPU正常运行程序时,由于微处理器内部事件或外设请求,引起CPU中断正在运行的程序,转去执行请求中断的外设(或内部事件)的中断服务子程序,中断服务程序执行完毕,再返回被中止的程序,这一过程称为中断。
可屏蔽中断由引脚INTR引入,采用电平触发,高电平有效,INTR信号的高电平必须维持到CPU响应中断才结束。
可以通过软件设置来屏蔽外部中断,即使外部设备有中断请求,CPU可以不予响应。
当外设有中断申请时,在当前指令执行完后,CPU首先查询IF位,若IF=0,CPU就禁止响应任何外设中断;若IF=1,CPU就允许响应外设的中断请求。
不可屏蔽中断由引脚NMI引入,边沿触发,上升沿之后维持两个时钟周期高电平有效。
不能用软件来屏蔽的,一旦有不可屏蔽中断请求,如电源掉电等紧急情况,CPU必须予以响应。
2. 列出微处理器上的中断引脚和与中断有关的指令。
答:INTR:可屏蔽中断请求输入引脚。
NMI:不可屏蔽中断请求输入引脚INTA:可屏蔽中断响应引脚INT n :软件中断指令,其中n为中断类型号INTO:溢出中断,运算后若产生溢出,可由此指令引起中断。
CLI:中断标志位IF清0STI:置位中断标志位为13. 8086/8088系统中可以引入哪些中断?答:(1)外部中断两种外部中断:不可屏蔽中断NMI和可屏蔽中断INTR(2)内部中断内部中断又称软件中断,有三种情况引起:①INT n :中断指令引起的中断②CPU的某些运算错误引起的中断:包括除法错中断和溢出中断③由调试程序debug设置的中断:单步中断和断点中断。
4. CPU响应中断的条件是什么?简述中断处理过程。
答:CPU响应中断要有三个条件:外设提出中断申请;本中断位未被屏蔽;中断允许。
可屏蔽中断处理的过程一般分成如下几步:中断请求;中断响应;保护现场;转入执行中断服务子程序;恢复现场和中断返回。
CPU在响应外部中断,并转入相应中断服务子程序的过程中,要依次做以下工作:⑴从数据总线上读取中断类型号,将其存入内部暂存器。
汇编语言与接口技术课后答案(1-8章完整版)-王让定 朱莹编( 下载后可查看剩余几章内容)
第一章(下载后可查看)第二章1.8086/8088 CPU的地址总线有多少位?其寻址范围是多少?答:8086/8088 CPU的地址总线共20位,最大可寻址1MB空间。
2.8086/8088 CPU分为哪两个部分?各部分主要由什么组成?答:8086/8088 CPU分为总线接口部件(BIU)和执行部件(EU)两个部分。
其中: BIU包括:4个16位的段地址寄存器(CS、DS、SS、ES);1个16位的指令指针寄存器IP;1个20位的地址加法器;指令队列寄存器;内部寄存器;输入输出总线控制逻辑;EU包括:4个16位的通用数据寄存器(AX、BX、CX、DX);4个16位的专用寄存器(BP、SP、SI、DI);1个16位的标志寄存器FR;4. 8086/8088 CPU中有几个通用寄存器?有几个变址寄存器?有几个指针寄存器?通常哪几个寄存器亦可作为地址寄存器使用?答:8086/8088 CPU中共有:8个16位的通用寄存器AX、BX、CX、DX 、BP、SP、SI、DI;2个变址寄存器SI、DI;2个指针寄存器BP、SP;其中BX、BP、SI、DI亦可作地址寄存器。
5.8086/8088 CPU中有哪些标志位?它们的含义和作用如何?答:8086/8088 CPU中共有9个标志位,其中DF、IF和TF为控制标志位,其余6个为状态标志位。
它们的含义和作用如下所示:CF(Carry Flag)进位标志:若算术运算的结果产生了进位或借位(对字节操作最高位是D7位;对字操作最高位是D15位),则CF=1,否则CF=0。
PF(Parity/Even Flag)奇偶标志:如果运算结果中含有偶数个1,则PF=1,否则PF=0。
此标志位主要用于数据通信中,检测数据传送有无出错。
AF(Auxiliary Carry Flag)辅助进位标志:用于反映一个字节(字的低字节)的低4位向高4位有无进位(借位)的情况,有进(借)位时,AF=1,否则AF=0。
汇编语言、微机原理及接口技术(第3版)郑初华_课后题解答
第1章进制及码元1.进制转换129= 81H= 10000001B=201Q298= 12AH= 100101010B=452Q1000= 3E8H= 1111101000B= 1750Q5DH= 1011101 B= 135 Q= 93 D3E8H= 1111101000 B= 1750Q= 1000 D;357Q=11101111 B= 0EF H= 239 D3.数据表示范围:一字节的无符号数表示范围为0~255,有符号数(补码)表示范围为-l28—+127。
一个字的无符号数表示范围为0~65535,有符号数(补码)表示范围为—32768~+32767。
N位二进制数的无符号数表示范围为0~(2N-1),有符号数(补码)表示范围为-2N-1~(2N-1-1).4.35H代表的ASCII字符为'5',代表十六进制数时等价的十进制值为53 ,代表压缩8421BCD码等价的十进制值为35 ,代表非压缩8421BCD码等价的十进制值为5。
5.FFH代表无符号数时等价的十进制值为255 ,代表补码有符号数时等价的十进制值为一1 ,代表反码有符号数时等价的十进制值为一0 ,代表原码有符号数时等价的十进制值为一l27。
6.--20的8位二进制补码为ECH ,原码为94H ,反码为EBH 。
158的16位二进制补码为009EH,原码为009EH ,反码为009EH 。
第2章微机硬件基础1.计算机系统硬件的五大功能部件及其主要功能?答:硬件系统按功能模块分为运算器、控制器、存储器、输入设备、输出设备。
运算器主要完成算术运算、逻辑运算及移位运算,其中主要包括算术逻辑运算单元Arithmetic Logic Unit,ALU)和暂存数据(原始、中间、结果)的寄存器(Register,R)。
控制器实现对计算机部件的协调调度完成指令的分析执行,其中主要有程序计数器Program Counter,PC)或叫指令指针(Instruction Pointer,IP)、指令寄存器(Instruction register,IR)、指令译码器(Instruction Decoder,ID)、微操作命令发生器、时序发生器等。
微机原理、汇编与接口技术习题答案 第7章习题答案
微机原理、汇编与接口技术第七章习题答案7.12 TF=0时,禁止单步中断。
PUSHF ;将标志寄存器传送给AXPOP AXAND AX, 0FEFFH ;将AX的D8位置0,其余位不变PUSH AX ;将AX传送给标志寄存器POPF7.1171H, 3040H:2200H和32600H。
7.13stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentIBUF DB 255, 0, 255 DUP(0)BCDMM DB 127 DUP(0)data endscode segmentbegin proc farassume ss: stack, cs: code, ds: datapush dssub ax, axpush axMOV DS, AX ;DS为中断向量表的段首址MOV AX, SEG I79 ;中断服务程序的段地址填入中断向量表MOV DS: 1E6H, AX ;1E6H=79H*4+2MOV AX, OFFSET I79 ;中断服务程序的偏移地址填入中断向量表MOV DS:1E4H, AXmov ax, datamov ds, axMOV DX, OFFSET IBUF ;键入一串十进制数MOV AH, 10INT 21HMOV DI, OFFSET BCDMM ;建立压缩BCD数存放区的地址指针INT 79Hretbegin endpI79 PROC FARINC DX ;DX指向IBUF的第二单元MOV BX,DXADD BL,[BX] ;BX指向字符串的最后一个字符INC DX ;DX指向第一个字符,即IBUF的第三单元MOV CL,4 ;二进制数移4位即BCD数移1位,移位次数送CL I790: CMP BX,DXJE I792 ;BX等于DX,则还有最高位1位待处理JA I791 ;BX高于DX,继续处理2位BCD数IRET ;BX低于DX结束I791: MOV AX,[BX-1] ;取2位BCD数的字符SUB BX,2 ;调整字符串指针AND AH,0FH ;BCD字符转变为BCD数保留在AH的低4位SHL AL,CL ;BCD字符转变为BCD数保留在AL的高4位OR AL,AH ;存2位压缩BCD数INC DI ;调整压缩BCD数存放地址指针JMP I790I792: MOV AL,[BX] ;取第一个字符,即BCD数的最高位字符AND AL,0FH; ;将BCD数字符转换为BCD数MOV [DI],AL ;存最高位BCD数IRETI79 ENDPcode endsend begin7.14stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentBUFF DB 8 DUP(0)data endscode segmentbegin proc farassume ss:stack,cs:code,ds:datapush dssub ax,axpush axMOV ES,AXmov ax,datamov ds,axMOV AX,SEG IRQ9IS ;中断服务程序入口地址送中断向量表MOV ES:1C6H,AXMOV AX,OFFSET IRQ9ISMOV ES:1C4H,AXMOV BX,OFFSET BUFFMOV CX,8MOV DX,380H ;指向0通道地址INLOP: OUT DX,AL ;启动转换,锁存模拟通道地址IN AL,0A1H ;读屏蔽字AND AL,0FDH ;改变屏蔽字,允许IRQ9中断OUT 0A1H,ALJMP$IN AL,DX ;读取转换结果MOV [BX],ALINC BX ;指向下一通道的存放地址INC DX ;指向下一通道的地址LOOP INLOPRetbegin endpIO809: MOV AL,61H ;指定中断结束命令OUT 0A0H,ALMOV AL,62HOUT 20H,ALIN AL,0A1H ;恢复屏蔽字,禁止IRQ9中断OR AL,2OUT 0A1H,ALPOP AX ;修改返址INC AXINC AXPUSH AXIRETcode endsend start出师表两汉:诸葛亮先帝创业未半而中道崩殂,今天下三分,益州疲弊,此诚危急存亡之秋也。
汇编语言第七章答案
MOV DX, OFFSET BUFF
ENDIF
INT 21H
ENDM
宏展开:
DOS21 01
1 MOV AH, 01
1 INT 21H
DOS21 0AH, IPFIELD
1 MOV AH, 0AH
1 MOV DX, OFFSET IPFIELD
1 INT 21H
7.15编写一段程序,使汇编程序根据SIGN中的内容分别产生不同的指令。如果(SIGN)=0,则用字节变量DIVD中的无符号数除以字节变量SCALE;如果(SIGN)=1,则用字节变量DIVD中的带符号数除以字节变量SCALE,结果都存放在字节变量RESULT中。
答:宏定义如下:
SUMMING MACRO ARRAY,COUNT,RESULT
LOCAL ADDITION
MOV ESI, 0
MOV ECX, COUNT
ADDITION: MOV EAX, ARRAY[ESI*4];;双字为4字节
ADD RESULT, EAX
ADC RESULT+4, 0;;将进位加到结果的高位双字中
1 POP AX
(3)宏调用ABSDIF [BX][SI], X[BX][SI], 240H的宏展开如下:此宏调用无效。
1 PUSH AX
1 DIF [BX][SI], X[BX][SI]
1 MOV AX, [BX][SI]
1 SUB AX, X[BX][SI]
1 CMP AX, 0
1 JGE ??0002
┇
JOE TEXT, I
1 TEXT1 DB ‘MESSAGE NO. 1’
┇
JOE TEXT, I
汇编语言与接口技术复习要点总结及一些习题
要点总结第二章微型计算机结构1.8086的段式存储结构段地址+偏移量地址=存储单元的物理地址或者,段寄存器的值*16+偏移地址=存储单元的物理地址2.段寄存器,通用寄存器,指针与变址寄存器,标志寄存器3.寻址方式(1)寻址方式的概念(2)寻址方式的分类(3)各寻址方式中对于寄存器的限制(4)各类寻址方式的格式第三章汇编语言(参照课件)1.汇编语句格式:[标号] 操作符操作数[;注释] 2.标号的概念以及其三个属性3.伪指令:(1)符号定义伪指令:EQU(2)数据定义伪指令:DB,DW(3)段定义伪指令:SEGMENT、ENDS、ASSUME 4、运算符(1)分析算符:SEG,,OFFSET ,SIZE,LENGTH(2)组合算符:PTR5.指令语句与伪指令语句的区别6.数据段、堆栈段、代码段的用途第四章指令及汇编程序设计1.数据传送指令:MOV、PUSH、POP、XCHG、XLAT2.算数运算指令:ADD、ADC、INC、SUB、SBB、DEC、NEG、3.逻辑运算指令:CMP、TEST、OR、AND、NOT、XOR4.移位指令:逻辑左移/右移,算数左移/右移,循环左移/右移,带进位的循环左移/右移;以及移位指令对于CF、OF标志位的影响分支结构程序设计1.无条件转移指令2.有条件的转移指令(教材P102)3.分支程序编写循环结构程序设计1.循环控制指令LOOP、LOOPE/Z、LOOPNE/NZ以及他们的控制条件(对CF、ZF的判断)2.循环程序编写子程序设计1.子程序定义伪指令、调用指令、返回指令2.子程序设计中对于堆栈操作的要求第五章输入与输出中断1.中断向量表、中断向量的概念2.中断向量的修改3.中断的类型:软件中断、可屏蔽硬件中断、非屏蔽硬件中断;以及CPU队可屏蔽硬件中断和非屏蔽硬件中断的不同的响应条件4.8259的基本结构和工作原理5.8259的操作命令字:包括各个命令字的作用、格式、具体的操作6.软件中断与硬件中断的异同点第六章8254程序设计1.8254的基本结构和工作原理2.8254的命令字格式,以及对于8254各个计数器工作方式的设定8255程序设计1.8255的基本结构和工作原理2.8255的命令字格式,以及对于8255各端口的操作16550异步串行通信中,波特率的概念,数据帧的概念第七章简单外设LED的显示原理键盘的结构及扫描原理一些复习题习题一一、选择题1、8086CPU中程序计数器IP中存放的是。
(完整版)汇编语言与接口技术习题解答,推荐文档
习题一解答:1.3(1)[0.0000]原=0.0000 [0.0000]反=0.0000 [0.0000]补=0.0000(2)[0.1001]原=0.1001 [0.1001]反=0.1001 [0.1001]补=0.1001(3)[-1001]原=11001 [-1001]反=10110 [-1001]补=101111.4[N]反=1.0101 [N]原=1.1010 [N]补=1.0110 N=-0.10101.5(1)原码运算:比较可知,正数较大,用正数减负数,结果为正反码运算:01010011-00110011=[01010011]反+[-00110011]反=001010011 +[100110011]反=001010011+111001100=000100000补码运算:01010011-00110011=[01010011]补+[-00110011]补=001010011 +[100110011]补=001010011+111001101=000100000(2)原码运算:比较可知,负数较大,用负数减正数,结果为负反码运算:0.100100-0.110010=0.100100+[1.110010]反=0.100100+1.001101=1.110001补码运算:0.100100-0.110010=0.100100+[1.110010]补=0.100100+1.001110=1.1100101.6(1) (11011011)2=(219)10=(001000011001)BCD(2) (456)10=(010*********)BCD(3) (174)8=(124)10=(000100100100)BCD(4) (2DA)16=(730)10=(011100110000)BCD1.7(1)9876H看成有符号数时,默认为负数的补码,转换为十进制数是:-26506(2)9876H看成无符号数时,转换为十进制数是:390301.8(1)98的压缩BCD码为:10011000B(2)98的非压缩BCD码为:0000100100001000B1.9(1)[S1+S2]补=[S1]补+[S2]补=00010110+00100001=00110111,无溢出[S1-S2]补=[S1]补+[-S2]补=00010110+11011111=11110101,无溢出(2)[S1+S2]补=[S1]补+[S2]补=00010110+11011111=11110101,无溢出[S1-S2]补=[S1]补+[-S2]补=00010110+00100001=00110111,无溢出(3)[S1+S2]补=[S1]补+[S2]补=01100100+00011110=10000010,有溢出[S1-S2]补=[S1]补+[-S2]补=01100100+11100010=01000110,无溢出(4)[S1+S2]补=[S1]补+[S2]补=10011100+11100010=01111110,有溢出[S1-S2]补=[S1]补+[-S2]补=10011100+00011110=10111010,无溢出习题二解答:2.1答:8086有哪些寄存器组?各有什么用途?①通用寄存器AX、BX、CX、DX它既可用作16位寄存器,又可将它拆成高、低8位,分别作为两个独立的8位寄存器使用。
微机原理与接口技术 第七章 课后答案
第七章作业参考答案1. 8086/8088共有多少矢量号?每一个矢量号占用矢量表的几个字节空间?它们的内容含义是什么?中断矢量表定位于内存储器的何处?若中断矢量号N=19H,计算该中断程序的矢量在矢量表中的地址。
答:8086/8088共有256个矢量号。
每一个矢量号占用矢量表的4个字节空间,前2个字节内容表示中断服务子程序入口地址的偏移地址;后2个字节内容表示中断服务子程序入口地址的段地址。
中断矢量表定位于内存储器的00000H~003FFH。
当N=19H时,在矢量表中的地址为:0000:0064H.2.若中断矢量表地址00060H存放4200H,00062H中存放1080H,则对应的中断类型号是多少?中断服务程序的入口地址(逻辑地址)是多少?答:对应的中断类型号是18H。
中断服务程序的入口地址(逻辑地址)是1080:4200H.3.什么是中断?PC机中有哪些类型中断?应用程序在修改中断矢量时,为什么要关中断?答:中断是指当CPU正常运行程序时,由于CPU内部事件或外设请求,引起CPU暂时中断当前正在运行的程序,转去执行请求中断的外设(或内部事件)的中断服务子程序,执行完中断服务子程序后,再返回原断点处继续执行被暂时中断的程序。
PC机的中断类型:外部中断与内部中断。
在应用程序修改中断矢量时,防止其它中断发生,因此需要关中断。
4.8259A的ICW2设置了中断类型码的哪几位?说明对8259A分别设置ICW2为30H、34H、38H有什么区别?答:8259A的ICW2设置了中断类型码的高5位,低3位自动插入。
当8259A对ICW2设置为30H时,说明中断类型码为30H~37H;当8259A对ICW2设置为34H时,中断类型码仍为30H~37H;当8259A对ICW2设置为38H时,说明中断类型码为38H~3FH;5.在由8086构成的最小方式系统中,有一片8259A构成中断控制系统。
设在片内A0=0时的端口地址用P8259A表示,在片内A0=1时的端口地址用P8259B表示。
汇编语言与接口技术课后答案(1-8章完整版)-王让定朱莹编(下载后可查看剩余几章内容)
第一章(下载后可查看)第二章1.8086/8088 CPU 的地址总线有多少位?其寻址范围是多少?答:8086/8088 CPU 的地址总线共20位, 最大可寻址1MB空间。
2.8086/8088 CPU分为哪两个部分?各部分主要由什么组成?答:8086/8088 CPU 分为总线接口部件(BIU)和执行部件(EU)两个部分。
其中BIU包括:4 个16 位的段地址寄存器(CS、DS、SS、ES);1个16位的指令指针寄存器IP;1个20位的地址加法器;指令队列寄存器;内部寄存器;输入输出总线控制逻辑;EU包括:4 个16 位的通用数据寄存器(AX、BX、CX、DX);4个16位的专用寄存器(BP、SP、SI、DI);1个16位的标志寄存器FR;4. 8086/8088 CPU 中有几个通用寄存器?有几个变址寄存器?有几个指针寄存器?通常哪几个寄存器亦可作为地址寄存器使用?答:8086/8088 CPU 中共有:8个16位的通用寄存器AX、BX、CX、DX 、BP、SP、SI、DI;2 个变址寄存器SI 、DI;2 个指针寄存器BP、SP;其中BX、BP、SI 、DI 亦可作地址寄存器。
5.8086/8088 CPU 中有哪些标志位?它们的含义和作用如何?答:8086/8088 CPU中共有9个标志位,其中DF、IF 和TF为控制标志位,其余6 个为状态标志位。
它们的含义和作用如下所示:CF(Carry Flag) 进位标志: 若算术运算的结果产生了进位或借位( 对字节操作最高位是D7位;对字操作最高位是D15位),则CF=1,否则CF=0。
PF(Parity/Even Flag) 奇偶标志:如果运算结果中含有偶数个1, 则PF=1,否则PF=0。
此标志位主要用于数据通信中, 检测数据传送有无出错。
AF(Auxiliary Carry Flag) 辅助进位标志: 用于反映一个字节( 字的低字节) 的低4位向高4位有无进位(借位)的情况,有进(借)位时,AF=1,否则AF=0。
汇编与接口课后作业答案
QQ有奖活动,玩转QQ第2章中央处理器1.8086/8088 CPU有两种工作模式,即最小模式和最大模式,它是由MN#/MX# 决定的。
2.加电复位后,8086 CPU从0FFFFH 地址取第一条指令并执行。
3.80286有24根地址线,它的可寻址空间为16MB 。
第3章80X86指令系统1.在寄存器间接寻址方式中,操作数在主存单元中。
2.算术运算类指令的寻址和程序控制类指令的寻址,其不同点在于:前者是操作数寻址,后者是指令寻址。
3.堆栈和队列不同,堆栈是按先进后出的方式工作的。
4.将寄存器BX的内容求反的正确操作是:XOR BX , 0FFFFH NOT BX注意:NEG BX是求BX的相反数5.循环指令LOOPNZ结束循环的条件是CX=0或者ZF=1。
注意:课本上该题目的选项都不对6.测试BL寄存器内容是否与数据4FH相等,若相等则转L1处执行,正确的程序段是:XOR BL , 4FH JZ L1 若不是选择题,则可以直接使用CMP指令比较。
7.假定(DS)=2000H,(SS)=1000H,(DI)=0500H,(SI)=00A0H,(BX)=0100H,(BP)=0010H,请指出下列指令的源操作数字段是什么寻址方式?有效地址是多少?物理地址是多少?1)MOV AX , [100H]直接寻址方式EA=100H DS段PA=2000H×10H+100H=20100H2)MOV AL , [BX][SI]基址变址寻址DS段EA=100H+00A0H=1A0HPA=2000H×10H+1A0H=201A0H3)MOV AX , [BX]寄存器间接寻址DS段EA=100HPA=2000H×10H+100H=20100H4)MOV AX , [BP] QQ有奖活动,玩转QQ寄存器间接寻址SS段EA=10HPA=1000H×10H+10H=10010H5)MOV AX , [DI]寄存器间接寻址DS段EA=500HPA=2000H×10H+500H=20500H6)MOV AX , [BX+10]寄存器相对寻址DS段EA=100H+10=10AHPA=2000H×10H+10AH=2010AH8.下列程序段执行后,将各指令的执行结果填空。
汇编语言王爽第七章题目答案及详解
红色部分为注释assume cs:codedata segmentdb '1975','1976','1977','1978','1979','1980','1981','1982','1983'db '1984','1985','1986','1987','1988','1989','1990','1991','1992'db '1993','1994','1995'dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226dw 11542,14430,15257,17800data endstable segmentdb 21 dup ('year summ ne ?? ')table ends以上是两个数据段下面开始是代码段code segmentbegin: mov ax,datamov ds,axmov bx,0mov si,0mov di,0mov ax,tablemov es,axmov ax,0mov cx,21 总共21次大循环,就是21行,行用BX标记,列用SI标记,si每行一次循环s: push cx 将CX压入,因为后续还要用打循环push di 寄存器用来标记数据代码中处于哪个位置,每4个字节一次跳转mov cx,4s1: mov al,[di] s1为写入年份,一个年份4个字节,4次循环mov es:[bx+si],al es为table数据段inc siinc diloop s1pop di 年份循环中di改变,重新从堆栈中读出dipush di 读出后继续压入inc simov cx,4s2: mov al,ds:[di+84] s2循环实现收入的四个字节写入循环,每次一个字节mov es:[bx+si],alinc siinc diloop s2pop dipush dimov ax,dimov dl,2div dlmov ah,0mov di,axinc simov al,ds:[di+168]mov es:[bx+si],alinc siinc dimov al,ds:[di+168]mov es:[bx+si],alinc siinc di 写入雇员数,2个字节,一个字节一个字节的写入,当然也可以一次性写入一个字来实现inc si 增加si标志用来跳过空格pop di 再次使用di,从堆栈来读取push di 使用后还原mov dx,[di+86]mov ax,[di+84]shr di,1mov cx,[di+168]div cx 用cx来存放,除数实现除法mov es:[bx+si],ax 商在AX中,16位除法pop diadd di,4push di 将di +4个字节便于下个循环add bx,10h 下一行重新开始mov si,0 列重新开始pop dipop cxloop smov ax,4c00hint 21hcode endsend begin欢迎交流zych_09@。
西工大2020年4月《汇编与微机接口》作业机考参考答案
西工大2020年4月《汇编与微机接口》作业机考参考答案试卷总分:100 得分:96完整答案:wangjiaofudao一、单选题<共50 道试题,共100 分>1.A.AX=265DH,CF=0B.AX=265DH,CF=1C.AX=A65DH,CF=0D.AX=A65DH,CF=1正确答案:A2.下列寄存器组中在段寻址时可以提供偏移地址的寄存器组是〔。
A.AX,BX,CX,DXB.BX,BP,SI,DIC.SP,IP,BP,DXD.CS,DS,ES,SS正确答案:B3.下列指令执行后能使BX中数据必为奇数的是〔。
A.XORB.OR BX,01HC.AND BX,01HD.TEST BX,01H正确答案:B4.指令MOV AX, [BP][SI],源操作数的物理地址计算公式是〔。
A.<SS>*B.<DS>*D.<ES>正确答案:A5.某存储器分段时,若一个段最多允许16K个字单元,则表示段偏移地址的二进制位数至少是〔位。
A.15B.16C.17D.18正确答案:6.有数据定义DW 10H DUP〔2 DUP〔3,300HA.10HB.20HC.1EHD.0FH正确答案:7. {A.779FHB.779EHC.779DHD.7799H正确答案:8.代码段使用的段寄存器名是〔。
A.DSB.CSD.CX正确答案:9.语句ENDM是通知汇编程序〔。
A.过程定义结束B.宏定义结束C.源程序结束D.段定义结束正确答案:10.可用于寄存器间接寻址和寄存器相对寻址的寄存器是〔。
A.AXB.BXC.CXD.DX正确答案:11.将变量的偏移地址存入数据区宜用的伪操作助记符是〔。
A.DWB.DBC.DDD.DQ正确答案:12.下列操作中允许段超越的是〔。
A.取指令B.存目的串C.以BP为基址存取操作数正确答案:13.下列语句中能实现留空8个字节单元的语句是〔。
A.DA1 DTB.DA2 DWC.DA3 DDD.DA4 DQ正确答案:14.有数据定义DB 4 DUP <0,2 DUP <20H>>,其中能组成0020H字数据的个数是〔。
汇编语言第七章答案
STORE MACRO K
MOV TAB+K, K
ENDM
宏调用:
I=0
REPT 7
STORE %I
I=I+1
ENDM
7.11试编写一段程序完成以下功能,如给定名为X的字符串长度大于5时,下列指令将汇编10次。
ADD AX, AX-X) GT 5
1 POP AX
(2)宏调用ABSDIF [BX], [SI], X[DI], CX的宏展开如下:此宏调用有效。
1 PUSH AX
1 DIF [BX], [SI]
1 MOV AX, [BX]
1 SUB AX, [SI]
1 CMP AX, 0
1 JGE ??0001
1 NEG AX
1 ??0001: MOV X[DI], AX
答:宏定义如下:
DISP_GOOD MACRO X, NAME
GOOD DB ‘GOOD STUDENTS: CLASS&X &NAME’, 0DH, 0AH, ‘$’
ENDM
7.7下面的宏指令CNT和INC1完成相继字存储。
CNT MACRO A, B
A&B DW ?
ENDM
INC1 MACRO A, B
1 NEG AX
1 ??0002: MOV 240H, AX
1 POP AX
(4)宏调用ABSDIF AX, AX, AX的宏展开如下:此宏调用有效但无多大意义。
1 PUSH AX
1 DIF AX, AX
1 MOV AX, AX
1 SUB AX, AX
1 CMP AX, 0
1 JGE ??0003
1 NEG AX
计算机原理与接口作业2
第7章汇编语言程序设计7.5程序段如下:BB DB 84,73,34,20,-5,122,46…MOV CX,7LEA DI,BBNEXT:MOV AL,[DI]INC DITEST AL,80HLOOPZ NEXTMOV BL,[DI]…请回答程序段运行后:AL= -5 ,BL= 122 。
7.6 STRING1 DB ‘ABC’STRING2 DB ‘DEFGHI’…MOV AH,01;从键盘输入一个1 ~ 9之间的字符INT 21HAND AL,0FHSUB AL,4XOR AH,AHMOV BX,OFFSET STRING2ADD BX,AXMOV DL,[BX]MOV AH,02H ;显示输出INT 21H…试回答:(1) 如从键盘输人字符‘3’,程序段有什么结果?答:显示“C”(2)如从键盘输人字符‘7’,程序段有什么结果?答:显示“G”7.8编一程序程序段,功能是把数0 ~ 9(BCD码)转换为相应的ASCII码,存在ASCI数据区中。
BCDM DB 09H,05H,06H,02H,08H,0,03HF,01H,07H,04HCUNT=$—BCDMASCI DB CUNT DUP ( ? )答:DA TASEGMENTBCDM DB 09H, 05H, 06H, 02H, 08H, 0, 03HF, 01H, 07H, 04HCUNT=$-BCDMASCI DB CUNT DUP(?)DA TA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATAMAIN PROC FAR MOV AX, DA TAMOV DS, AXLEA SI, BCDMLEA DI, ASCIMOV CX, CUNTLP:MOV AL, [SI]OR AL, 30HMOV [DI], ALINC SIINC DILOOP LPMOV AX,4C00HINT 21HMAIN ENDPCODE ENDSEND MAIN7.9在STR单元开始定义了一长度为LEN字节的字符串,统计出其中大写字母的个数并存放到LARGE字节单元中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
P285
3.8259A的初始化命令字有哪些?各自如何定义?如何解决地址问题。
答:有4个。
分别为ICW1、ICW2、ICW3、ICW4。
各自定义参考教材。
首先在偶地址(A0=0)送ICW1(D4=1),然
后在奇地址(A0=1)根据顺序分别送ICW2→ICW3→ICW4。
其中ICW2必须送,单片不需要送ICW3,是否送ICW4有ICW1中的D0位是否为1决定。
D0=1送ICW4,并且8086系统必须送ICW4。
4.假设8259A的端口地址为92H、93H,如何用它的命令字来禁止IR3和IR5引脚上的请求,又如何撤销这一禁止命令?
解:运用操作命令字OCW1来完成,该操作命令字是奇地址93H
IN AL 93H
OR AL,00101000
OUT 93H,AL
撤销:
IN AL 93H
AND AL,11010111
OUT 93H,AL
5.假设8259A的端口地址为92H、93H,按照如下要求对8259A设置初始化命令字,系统中只有一片8259A,中断请求信号采用电平触发,中断类型码为60H~67H,用特殊嵌套,不用缓冲方式,采用中断自动结束方式。
解:ICW1:00011011(1BH;一片8259A,中断请求信号采用电平触发,设置ICW4)ICW2:60H(中断类型码60 H~67H)
单片不需要ICW3
ICW4:00010111(17H;用特殊嵌套,不用缓冲方式,采用中断自动结束方式)
MOV AL, 1BH
OUT 92H,AL
MOV AL, 60H
OUT 93H,AL
MOV AL, 17H
OUT 93H,AL
P352
2.A/D和D/A转换器在微机控制系统中起什么作用?
答:A/D负责将输入的模拟信号转换成数字信号供计算机处理。
D/A:负责将计算机处理完的数字信号转换为模拟信号去控制外部设备。