微机微机原理与接口技术课后答案内容摘要:
PUSH CX,POP AX 后,栈顶和栈底的地址分别为( )。 A. 201FAH, 20200H B. 201FCH, 20200H C. 201FCH, 20200H D. 201FDH, 201FFH 【 解 】 A 1 以下那个说法正确( )。 A. 指令 MOV AL, [BX+5]中的源操作数的寻址方式是寄存器间接寻址。 B. 指令 MOV AL, [BX+SI]中的源操作数的寻址方式是基址变址寻址。 C. 指令 MOV AL, [BX+SI+5]中的源操作数的寻址方式是相对的寄存器间接寻址。 D. 指令 MOV AL, [1000H]中的源操作数的寻址方式是立即寻址。 【 解 】 B 1 在循环( LOOP)和串处理指令中,用作计数器的寄存器是( )。 【 解 】 C 1 无条件段间转移指令的执行改变( )。 ,SP ,IP 【 解 】 D 指令 MOV AX, [BX][SI]中源操作数采用的寻址方式是( )。 【 解 】 A 2 设 DS=8225H, DI=3942H,指令 NEG BYTE PTR[DI]操 作数的物理地址是( )。 B. 86192H 【 解 】 A 2 循环指令 LOOPNZ 终止循环的条件是( )。 A. CX=0,且 ZF=0 B. CX=0,或 ZF=1 C. CX=0,或 ZF=0 D. CX=0,且或 ZF=1 【 解 】 D 2 对寄存器 AX 的内容乘以 4 的正确指令序列是( )。 A. SHR AX, 1; SHR AX, 1 B. SHL AX, 1; SHL, AX, 1 C. ROL AX, 1; ROL AX, 1 D. RCR AX, 1; RCR AX, 1 【 解 】 B 2 执行 INC 指令除对 SF、 ZF 有影响外,还要影响的标志位是( )。 A. OF, AF, PF B. OF, AF, CF C. OF, PF, CF D. AF, PF, CF 【 解 】 A 2 下列传送指令中有语法错 误的是( )。 A. MOV CS, AX B. MOV DS, AX C. MOV SS, AX D. MOV ES, AX 【 解 】 A 2 执行除法指令后,影响的标志位是( )。 A. CF, OF B. SF, ZF C. CF, OF, SF D. AF, CF, OF, PF, SF, ZF 【 解 】。 2 设( AX) =2020H ( BX)= 1000H,则在执行了指令 “CMP AX, BX”后,标志位 CF 和 ZF 的值分别为( )。 A. 0, 0 B. 0, 1 C. 1, 0 D. 1, 01 【 解 】 A 2 CPU 执行算术运算指令不会影响的标志位是( )。 【 解 】 D 2 下列 8086 指令中,对 AX 的结果与其他三条指令不同的是( )。 AX, 0 B. XOR AX, AX AX, AX AX, 0 【 解 】 D 寄存器间接寻址方式中,操作数在( )中。 【 解 】 C 二、简答题: 指出下列指令的错误 : (1) MOV AH,BX (2) MOV [SI],[BX] (3) MOV AX,[SI][DI] (4) MOV AX,[BX][BP] 【 解 】 (1)源操作数与目的操作数的数据格式不一致。 (2)源操作数与目的操作数都为存储器寻址。 (3)源操作数所使用的寄存器都是变址寄存器。 (4) 源操作数所使用的寄存器都是基址寄存器。 试分析下面的程序段完成什么操作。 MOV CL,04 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL 【 解 】 将 DX,AX 寄存器中的双字左移 4 位,即乘以 16。 为什么用増量指令或减量指令设计程序时,在这类指 令后面不用进位标志作为判断依据。 【 解 】 因为 INC 和 DEC 指令不影响 CF 进位标志位。 假设 (CS)=3000H, (DS)=4000H, (ES)=2020H, (SS)=5000H, (AX)=2060H, (BX)=3000H, (CX)=5, (DX)=0, (SI)=2060H, (DI)=3000H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H,.(SP)=0FFFEH, (CF)=1, (DF)=1, 请写 出下列各条指令单独执行完后 , 有关寄存器及存储单元的内容 , 若影响条件码请给出条件码 SF、 ZF、 OF、 CF 的值。 (1) SBB AX,BX (2) CMP AX,WORD PTR[SI+0FA0H] (3) MUL BYTE PTR[BX] (4) AAM (5) DIV BH (6) SAR AX,CL (7) XOR AX,0FFE7H (8) REP STOSB (9) JMP WORD PYR[BX] (10) XCHG AX,ES:[BX+SI] 【解】( 1)( AX)= 0F060H, SF= 1,ZF= 0,OF= 0,CF= 1; ( 2) 所有寄存器和存储单元的内容不变, SF= 1,ZF= 0,OF= 1,CF= 1; ( 3) ( DX)= 612H,( AX)= 0H, CF= OF= 1, SF、 ZF 未定义 ( 4) ( 5) ( AX)= 20ACH; ( 6) ( AX)= 0103H, SF= 0, ZF= 0, CF= 0; ( 7) ( AX)= 0DF87H, SF= 1, ZF= 0, CF= OF= 0; ( 8) ( CX)= 0H,( DX)= 2FFBH,( 22FFCH)= 6060H,( 22FFEH)= 6060H, ( 23000H)= 0B160H; ( 9) ( IP)= 0A006H; ( 10) ( AX)= 00B0H, (25060H)= 2060H。 用普通运算指令执行 BCD 码运算时,为什么要进行 十进制调整。 具体讲 ,在进行 BCD 的加、减、乘、除运算时,程序段的什么位置必须加上十进制调整指令。 【解】十进制数调整指令对二进制运算的结果进行十进制调整,以得到十进制的运算结果,分成压缩 BCD 码和非压缩 BCD 码调整。 在进行 BCD 的加、减、乘运算时,十进制调整指令必须位于运算指令之后,而除法运 算时则十进制调整指令应放在运算指令之前,对被除数做调整。 假定 AX 和 BX 中的内容为带符号数 , CX 和 DX 中的内容为无符号数 , 请用比较指令和条件转移指令实现以下判断 : (1)若 DX 的值超过 CX 的值 ,则转去执行 EXCEED (2)若 BX 的值大于 AX 的值 ,则转去执行 EXCEED (3)CX 中的值为 0 吗 ? 若是则转去执行 ZERO (4) BX 的值与 AX 的值相减 , 会产生溢出吗 ? 若溢出则转 OVERFLOW (5)若 BX 的值小于 AX 的值 ,则转去执行 EQ_SMA (6)若 DX 的值低于 CX 的值 ,则转去执行 EQ_SMA 【解】( 1) CMP DX, CX JA EXCEED; ( 2) CMP AX, BX JL EXCEED; ( 3) JCXZ ZERO; ( 4) CMP BX, AX JO OVERFLOW; ( 5) CMP AX, BX JGE EQ_SMA; ( 6) CMP DX, CX JB EQ_SMA。 8086/ 8088 用什么途径来更新 CS 和 IP 的值 ? 【解】( 1)在 CPU 执行任何一条指令时, CPU 都会根据指令的长度自动修改 IP 寄存器的值,使之指向下一条指令; ( 2) 在使用转移指令 ,且使用段内直接寻址,或使用循环指令时,新( IP)即转向的有效地址 = 当前 (IP) + 位移量,也就是说 IP 的值是通过计算得到的。 ( 3) 在使用转移指令,且使用段内或段间间接寻址时,是从相应的存储单元取出值来更新 IP(段内)或者 CS 和 IP(段间)。 ( 4) 在子程序调用或中断以及返回时,则是利用堆栈来更新 IP(段内子程序调用)或者 CS和 IP(段间子程序调用或中断)。 字节扩展指令和字扩展指令用在什么场合。 举例说明。 【解】 遇到两个字节相除时,要预先执行 CBW 指令,以便产生一个双倍长度的被除数。 否则就不 能正确的执行除法操作。 CWD 同理。 例 MOV AL, 0C8H CBW MOV BL, 43H IDIV BL 在此例中, ( AL) =C8H,应是 56D,若不用 CBW 指令,被除数( AX) =00C8H,则是200D,运算结果就会出错。 用其他指令完成和下列指令一样的功能 : (1) REP MOVSB (2) REP LODSB (3) REP STOSB (4) REP SCASB 【解】 ( 1) LOOP1: MOV AL, BYTE PTR [SI] MOV BYTE PTR ES: [DI], AL DEC SI(或者是 INC SI) DEC DI(或者是 INC DI) LOOP LOOP1; ( 2) LOOP1: MOV AL, BYTE PTR [SI] DEC SI(或者是 INC SI) LOOP LOOP1; ( 3) LOOP1: MOV BYTE PTR ES: [DI], AL DEC DI(或者是 INC DI) LOOP LOOP1; ( 4) LOOP1: CMP AL, BYTE PTR ES: [DI] JNZ EXIT DEC DI(或者 是 INC DI) EXIT: LOOP LOOP1。 HLT 指令用在什么场合。 如 CPU 在执行 HLT 指令时遇到硬件中断并返回后,以下应执行哪条指令。 【解】 HLT 是停机指令,它可使机器暂停工作。 HLT 用在使 CPU 处于暂停状态而等待硬件中断的场合。 在执行 HLT 指令遇到硬件中断并返回后将执行 HLT 后面的一条指令。 三、读程分析题: 分析执行下列指令序列后的结果: 1) MOV AX, 1234H MOV BX, 00FFH AND AX, BX (AX)=______。 【解】( AX)= 34H。 2) MOV AL, 01010101B AND AL, 00011111B OR AL, 11000000B XOR AL, 00001111B NOT AL (AL)=_______。 【解】( AL)= 25H。 MOV DL, 05H MOV AX, 0A00H MOV DS, AX MOV SI, 0H MOV CX, 0FH AGAIN: INC SI CMP [SI],DL LOOPNE AGAIN HLT 本程序实现了 _________功能。 【解】 在以 0A001H 开始的 15 个单元中查找 05H。 MOV AX,DSEGADDR MOV DS, AX MOV ES,AX MOV SI, OFFSET B1ADDR MOV DI,OFFSET B2ADDR MOV CX,N CLD REP MOVSB HLT 本程序实现了 ___________功能。 【解】 将 B1ADDR 中。微机微机原理与接口技术课后答案
相关推荐
使青霉素失去抑菌 ,杀菌的作用 .例 2:在检查喹诺 **类抗菌药时 ,可根据其理化性质 :3,4位羧基与 **羰基 ,容易和金属离子如 ,钙 ,镁 ,铁 ,锌等形成螯合物降低药物的活性 .在稀释剂或培养基中加入nS4()3检查在相关时间段 其他样品或同类样品的检测结果 和 微生物菌落形态也可参考当天 /当次检验其他检品的检验结果 ,有类似异常情况发生 ,可根据所检查微生物菌落形态作出相应的判断
取供试品 10g,加到 氯化钠 — 蛋白胨缓冲溶液 100 ml 中,振摇,使成 1: 10 的的供试液。 试验方法 题 目: L丙氨酰 L谷氨酰胺微生物限度检查方法验证方案 第 7 页 共 16 页 试验组:取供试液 1ml( 1: 10)注入无菌平皿中,分别注入 5 种( 50100cfu/ml)的试验菌,并立即倾注 45℃左右的营养琼脂培养基与改良马丁 琼脂培养基约 15~20ml
. 小组成员首先提出心中的疑问,并假设结论。 2. 小组成员团结合作,共同上网查找资料、到商店买东西,向别人请教等等。 团队 ▫ 必须团结合作 ▫ 在探究过程 等方面团队必须保持一致意见 ▫ 每一个成员都必须全力以赴 ▫ 在项目结束时,要进行组内的互评 最终的产品 ▫ 描绘出 小数加减法计算的注意问题及方法。 ▫
,扩展的 ASCII 码共有 28=256 个。 基本 ASCII 码包括: 数字 10 个: 0~9 ( ASCII 码: 30H~39H) 大写字母 26 个: A~Z ( ASCII 码: 41H~5AH) 小写字母 26 个: a ~ z ( ASCII 码: 61H~7AH) 标点与运算符号: 20 多个(包括,。 ;。 :。 + * / 等) 各种控制符: 30 多个(包括设备、文件
口参数。 、编制一个子程序,把一个 16位二进制数用 4位 16进制形式在屏幕上显示出来。 、在以 BUF 为首地址的字缓冲区中有 3个无符号数,编程将这 3个数按升序排列,结果存回原缓冲区。 、在 DAT 字节单元中有一个有符号数,判断其正负,若为正数,则在屏幕上显示 “ +” 号;若为负数 ,则显示 “ ” 号;若是 0,则显示 0。 、编程求 1~ 400中所有奇数的和
NT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV SI, OFFSET STRING MOV CX, COUNT MOV AL,‘ $’ CONT: CMP AL, [SI] JNZ NEXT MOV BYTE PTR[SI],‘ ’ NEXT: INC SI LOOP CONT MOV AH, 4CH INT 21H