汇编作业及参考答案
- 格式:doc
- 大小:81.00 KB
- 文档页数:6
[0413]《汇编语言》第一次作业[单选题]数据传送指令对标志位的影响为( )A:都不影响B:都影响C:除了SAHF,POPF,其它均不影响D:除了控制标志位,其它均不影响参考答案:D[单选题]比较指令CMP( )A:专用于有符号数比较B:专用于无符号数比较C:专用于串比较D:不区分比较的对象是有符号数还是无符号数参考答案:D[单选题]若(AL)=87H,执行ADD AL,0F5H后,S,Z,C,O,P的状态为( ) A:SF=0,ZF=0,CF=1,OF=1,PF=0B:SF=1,ZF=0,CF=1,OF=0,PF=1C:SF=0,ZF=0,CF=0,OF=1,PF=0D:SF=1,ZF=0,CF=1,OF=1,PF=1参考答案:C[单选题]能定义ASCII码字符串的数据定义语句有( )A:DB,DW,DD,DQ,DTB:DB,DW,DDC:DB, DWD:DB参考答案:D[单选题]8086 的汇编语言指令系统中的条件转移指令可以使程序转移到( ) A:段内的任何地方B:距该指令偏移地址为-32768~+32767的地方C:距该指令偏移地址为-128~+127的地方D:段外参考答案:A[单选题]中断矢量表中存放的是( )A:中断类型号B:断点地址C:中断服务程序D:中断服务程序入口地址参考答案:D[单选题]在指令 MOV AX,[1000H]中,源操作数的寻址方式为( )A:立即寻址B:直接寻址C:段内间接寻址D:寄存器寻址参考答案:B[单选题]设字长N=16,有符号数7AE9H的补码表示为( )A:9EA7HB:76C4HC:8417HD:7AE9H参考答案:D[单选题]比较有符号数3260H与0B425H的大小关系为( )A:相等B:小于C:大于D:不能比较参考答案:C[单选题]指令JMP WORD PTR [BX][DI]中转移的目标地址为( )A:16 d x(DS)+(BX)+(DI)B:16d x(ES)+(BX)+(DI)C:16d x(SS)+(BX)+(DI)D:16d x(CS)+(BX)+(DI)参考答案:A第二次作业[单选题]使用DOS系统功能调用时,使用的软中断指令是()A:INT 21B:INT 10HC:INT 16HD:INT 21H参考答案:D[单选题]DA1 DW‘AB',‘CD',‘EF',‘GH'() ...... MOV AX,DA1+3 A:‘EF’B:‘CD’C:‘BC’D:‘FC’参考答案:D[单选题]设AL=0AH,下列指令执行后能使AL=05H的是()A:NOT ALB:AND AL,0FHC:XOR AL,0FHD:OR AL,0FH参考答案:C[单选题]在下列串操作指令中,同时使用源串和目的串地址指针的指令是()A:STOSWB:LODSWC:SCASWD:CMPSW参考答案:D[单选题]比较两个带符号的数A、B,当A=B时程序转移,测试的条件为()A:ZF=1B:ZF=0C:SF=1D:SF=0参考答案:A[单选题]下面程序段执行后,AL中的内容是() MOV AX,8833H ADD AL,AH DAA A:21B:21HC:0C1HD:0DDH参考答案:B[单选题]REPZ CMPSW指令,重复执行的终止条件是()A:CX=0或ZF=0B:CX=0且ZF=0C:CX=0或ZF=1D:CX=0且ZF=1参考答案:A[单选题]要实现使BETA的值为56,应采用语句为()A:BETA DB 56B:BETA DB 56HC:BETA EQU 56D:BETA EQU 56H参考答案:C[单选题]汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法()A:名字的第一个字符可以是大写英文字母及小写英文字母B:名字的第一个字符可以是字母、数字及、@、_C:名字的有效长度≤31个字符D:在名字中不允许出现$参考答案:B[单选题]检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在"CMP AL,BL”指令后应跟的分支指令是()A:JNC LOP1B:JA LOP1C:JC LOP1D:JGE LOP1参考答案:A第三次作业[单选题]当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是()A:JLEB:JNLC:JNLED:JL参考答案:C[单选题]下面的数据传送指令中,错误的操作是()A:MOV SS:[BX+DI],1000HB:MOV DX,1000HC:MOV WORD PTR[BX],1000HD:MOV DS,2000H参考答案:D[单选题]将数据5618H存放在存储单元中的伪指令是( )A:DATA1 DW 1856HB:DATA1 DB 18H,56HC:DATA1 EQU 5618HD:DATA1 DB 18H,00H,56H,00H参考答案:B[单选题]MOV SP,3210H PUSH AX 执行上述指令序列后,SP寄存器的值是( )A:3211HB:320EHC:320FHD:3212H参考答案:B[单选题]为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序列是( )A:INC CX JZ MINUSB:SUB CX,OFFFFH JZ MINUSC:AND CX,OFFFFH JZ MINUSD:XOR CX,OFFFFH JZ MINUS参考答案:C第四次作业[论述题]将AX寄存器中的16位数分成四组,每组四位,然后把这四组数分别放在AL、BL、CL和DL中。
(一) 单选题1.8086/8088的中断系统能够处理多少个不同的中断源()。
(A) 16 (B) 32 (C) 128 (D) 256参考答案:(D)2.执行指令JBOPR,能使程序发生转移的条件为()。
(A)(B)(C)(D)参考答案:(C)3.设,,则执行指令JMPWORD PTR后,寄存器IP中的内容为()。
(A) 0100H (B) 2000H (C) 0080H (D) 0012H参考答案:(C)4.8086/8088的每个中断向量占多少个字节()。
(A) 1 (B) 2 (C) 3 (D) 4参考答案:(D)5.串操作指令以下列哪个寄存器指向源操作数()。
(A) DI (B) SI (C) AX (D) BX参考答案:(B)6.DOS操作系统使用的中断类型号范围是()。
(A) 00H~1FH (B) 20H~3FH (C) 40H~5FH (D) 60H~7FH参考答案:(B)7.指令JNPOPR的转移条件是()。
(A) 状态标志位PF为1 (B) 状态标志位OF为1 (C) 状态标志位PF为0 (D) 状态标志位OF为0参考答案:(B)8.指令CLD的功能是()。
(A) 状态位DF清零(B) 状态位ZF清零(C) 状态位SF清零(D) 状态位CF清零参考答案:(A)9.指令JSOPR的转移条件是()。
(A) 状态标志位SF为1 (B) 状态标志位CF为1 (C) 状态标志位SF为0 (D) 状态标志位CF为0参考答案:(A)10.设,,,,,,则执行指令JMPDWORD PTR后,寄存器IP中的值为()。
(A) 5000H (B) 0080H (C) 3000H (D) 2012H参考答案:(B)(二) 多选题1.汇编语言程序设计中对段定义的伪指令中通常指明段的类型,除了DWORD、WORD和BYTE类型外,还有哪几种类型()。
(A) PUBLIC (B) PAGE (C) COMMON (D) PARA参考答案:(BD)2.常用的循环控制方法有()。
汇编语言作业一一、单项选择题第18题〔1分〕当运算结果的最高位为1时,标志位〔 3 〕。
A. CF=1B. OF=1C. SF=1D. ZF=1第19题〔1分〕8086CPU的寄存器中,通常用作数据寄存器,且隐含用法为I/O端口的间址寄存器的是〔4〕。
A. AXB. BXC. CXD. DX第22题〔1分〕设(21b24H)=39H,(21B25H)=7BH,(21B26H)=51H,(21B27H)=84H.则(21B26H)的字单元内容为〔 4 〕。
A. 517BHB. 397bHC. 7B39HD. 8451H第25题〔1分〕8086/8088的输入/输出指令中,间接寻址外设时,地址总线使用了多少条?可访问端口地址范围为〔3〕。
A. 20条,O000H~0FFFFFHB. 20条,0000H~0FFFFHC. 16条,0000H~FFFFHD. 8条,00H~FFH第28题〔1分〕微型电脑的字长是指〔 1 〕。
A. 电脑一次可以直接处理的二进制位数B. CPU数据总线的宽度C. 一个字节的长度D. CPU地址总线的宽度第31题〔1分〕汇编语言中,存放下一条将要执行的指令地址寄存器是〔 4 〕。
A. SPB. AXC. DID. IP第32 题〔1分〕汇编语言中,cpu和外部设备的信息传送都要通过哪个寄存器〔2〕。
A. BXB. AXC. CXD. DX二、多项选择题〔不考〕三、是非题第1题〔1分〕〔 2 〕当ZF为1时,SF为1。
第2题〔1分〕〔 1 〕8088/8086中,取指令和执行指令可以重叠操作。
第3题〔1分〕〔1〕当DF=0时,串处理从低地址向高地址方向变化。
第4题〔1分〕〔 1 〕当IF=1时,开中断。
四、填空题第7题〔2分〕以下各数均为二进制补码:A=00110010B,B=01001010B,C=11101001B,D=10111010B。
试写出以下运算的十进制数真值和各标志位的值:A+B= 124 ,CF= 0 ,SF= 0 ,ZF=0 ,AF=0 ,PF=0 ,OF=0 .D-C-A= -97 。
《计算机组成原理与汇编语言》课后习题及作业答案王建东2006年9月第一章习题参考答案1、什么是存储程序工作方式?(P.2.)答:(1) 事先编制程序(2) 实现存储程序(3) 自动、连续地执行程序2、采用数字化方法表示信息有哪些优点?(P.5.)答:(1) 抗干扰能力强,可靠性高(2) 在表示数值时,可以获得很宽的表示范围以及很高的精度。
(3) 数字化的信息可以存储,信息传送也比较容易实现。
(4) 可表示的信息类型与范围及其广泛,几乎没有限制。
(5) 能用逻辑代数等数字逻辑技术进行信息处理,着就形成了计算机硬件设计的基础。
3、如果有7X9点阵显示出字符A的图像,请用9个七位二进制代码表示A的点阵信息。
0000000000100000101000100010011111001000100100010010001000000004、数字计算机的主要特点是什么?(P.16.)答:(1) 能在程序控制下自动连续地工作(2) 运算速度快(3) 运算精度高(4) 具有很强的信息存储能力(5) 通用性强,应用领域极其广泛5、衡量计算机的基本指标有哪些?(P.17.)答:(1)基本字长(2)数据通路宽度(3)运算速度(4) 主存储器容量(5) 外存容量(6) 配置的外围设备及其性能(7) 系统软件配置6、举出一种实际计算机,列举出各部件、设备的技术性能及常配置的软件?略7、软件系统一般包含哪些部分?列举你熟悉的三种系统软件。
(P.9.)答:系统软件是一组使计算机良好运行而编制的基础软件。
它包括:(1)操作系统如:Windows 2000,Linux,Unix(2)编译程序、解释程序如:C++编译程序,Peal解释程序(3)各种软件平台如:数据库管理系统8、对源程序的处理有哪两种基本方式?(P.11.)答:对源程序的处理有解释和编译两种类型。
解释方式是边解释边执行。
如:BASIC 它的优点是支持人机对话方式的程序设计,可以边执行边修改;所需要的主存空间较小。
一、单项选择题(只有一个选项正确,共10道小题)1.十进制数-100的8位二进制数的补码为()。
(A) 10011100(B)11100100(C) 11001110(D) 011001002.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。
(A) 无符号十进制数136(B) 压缩型BCD码十进制数88(C) 8位二进制数-8的补码表示(D) 带符号十进制数-1203.指令MOV AX,[BX][SI]中源操作数采用的寻址方式是()。
(A) 寄存器(B) 基址变址(C) 寄存器间接(D) 寄存器相对4.下面有语法错误的指令是( )。
(A) ADD [BP+2],DA1(DA1是变量名)(B) ADD [BX+3],AL(C) ADD AL,AH(D) ADD AH,[DI]5.在DEBUG上机调试程序时,存储器地址表示为12FA:015F,它的物理地址是( )(A) 12FAH(B) 1305FH(C) 015FH(D) 130FFH6.下列指令中,执行后,不改变标志位ZF的是()。
(A) AND AL,AL(B) TEST AL,0FFH(C) CMP AL,BL(D) ROR AL,CL7.DATA SEGMENTDA1 DB 32 DUP(?)DA2 DW 1456H,789AHDA3 DW DA2DATA ENDS…MOV BX, DA3上述指令执行后,BX中的内容是( )。
(A) 0031H(B) 0032H(C) 0020H(D) 0021H8.完成将累加器AX清零,下面错误的指令是()。
(A) OR AX,00H(B) AND AX,00H(C) XOR AX,AX(D) SUB AX,AX9.数据段有如下数据定义VAR DB 4 DUP(1,5 DUP(?)),1,2执行指令MOV AL,SIZE VAR后AX寄存器的值是多少()。
(A) 4(B) 1(C) 5(D) 2010.内存中(2000H)=3000H,(3000H)=A01FH,MOV BX,[2000H]MOV AX,[BX]执行上述指令AX的内容是()。
习题51.试说明以下指令中各操作数的寻址方式,如果是存储器寻址,请给出其EA计算公式,并说明所使用的段寄存器。
(1)MOV AL,08H 源操作数:立即数寻址目的操作数:寄存器寻址(2)MOV [0120H],BL 源操作数:寄存器寻址目的操作数:直接寻址,EA=0120H,使用DS段寄存器(3)ADD [BX],AL 源操作数:寄存器寻址目的操作数:寄存器间接寻址,EA=(BX),使用DS段寄存器(4)PUSH [SI]0200H 源操作数:变址寻址,EA=(SI)+0200H,使用DS段寄存器目的操作数:隐含寻址(指令中未直接体现)(5)SUB AX,[BP] 源操作数:寄存器间接寻址,EA=(BP),使用SS段寄存器目的操作数:寄存器寻址(6)AND V AR1+4,DL 源操作数:寄存器寻址目的操作数:直接寻址,EA=V AR1+4,使用DS段寄存器(7)PUSHF 源操作数、目的操作数均为隐含寻址(8)MOV ES : [BX]0100H, AL 源操作数:寄存器寻址目的操作数:基址寻址,EA=(BX)+0100H,用ES段寄存器(9)ADC BYTE PTR [BP][SI]0210H,45H源操作数:立即数寻址目的操作数:基址变址寻址,EA=(BP)+(SI)+0210H,使用SS段寄存器(10)OR ARRY[BX][DI],CL源操作数:寄存器寻址目的操作数:基址变址寻址,EA=(BX)+(DI)+ARRY,使用DS段寄存器2.试分析下列汇编指令是否存在语法错误,如果有语法错误存在,请说明是怎样的错误。
(1)PUSH 8243H错误,单操作数指令不能使用立即数(2)POP AL错误,进栈、出栈指令的操作数应为16位(3)MOV AL,6543H错误,源、目的操作数类型不匹配(4)ADD [0100H],64H错误,目的操作数应使用PTR运算符指出类型,否则具有二义性正确的写法:ADD BYTE PTR [0100H],64H,(或使用WORD PTR)(5)ADC V AR1,V AR2错误,8086指令系统的双操作数指令中,必须有一个是寄存器,不能两个操作数同为内存单元(6)MOV DS,ES错误,段寄存器间不能使用MOV指令直接传递数据,必须通过通用寄存器作为中转(7)MOV DS,0620H错误,使用MOV指令向段寄存器传递数据时,不能使用立即数(8)LEA BX,AX错误,L EA指令的源操作数必须为内存单元(9)DEC AL,AH错误,DEC指令为单操作数指令(10)SHR BL,3错误,当移位次数大于1时,在移位指令中特定使用CL寄存器给出移位次数正确的写法:MOV CL, 3SHR BL, CL3.试说明分别执行下列各组指令后,CF、OF、AF、ZF、SF、PF这六个状态标志分别是怎样的取值。
汇编语言作业一一、单选题第18题(1分)当运算结果的最高位为1时,标志位( 3 )。
A. CF=1B. OF=1C. SF=1D. ZF=1第19题(1分)8086CPU的寄存器中,通常用作数据寄存器,且隐含用法为I/O端口的间址寄存器的是(4)。
A. AXB. BXC. CXD. DX第22题(1分)设(21b24H)=39H,(21B25H)=7BH,(21B26H)=51H,(21B27H)=84H.则(21B26H)的字单元内容为( 4 )。
A. 517BHB. 397bHC. 7B39HD. 8451H第25题(1分)8086/8088的输入/输出指令中,间接寻址外设时,地址总线使用了多少条?可访问端口地址范围为(3)。
A. 20条,O000H~0FFFFFHB. 20条,0000H~0FFFFHC. 16条,0000H~FFFFHD. 8条,00H~FFH第28题(1分)微型计算机的字长是指( 1 )。
A. 计算机一次可以直接处理的二进制位数B. CPU数据总线的宽度C. 一个字节的长度D. CPU地址总线的宽度第31题(1分)汇编语言中,存放下一条将要执行的指令地址寄存器是( 4 )。
A. SPB. AXC. DID. IP第32 题(1分)汇编语言中,cpu和外部设备的信息传送都要通过哪个寄存器(2)。
A. BXB. AXC. CXD. DX二、多选题(不考)三、是非题第1题(1分)( 2 )当ZF为1时,SF为1。
第2题(1分)( 1 )8088/8086中,取指令和执行指令可以重叠操作。
第3题(1分)(1)当DF=0时,串处理从低地址向高地址方向变化。
第4题(1分)( 1 )当IF=1时,开中断。
四、填空题第7题(2分)下列各数均为二进制补码:A=00110010B,B=01001010B,C=11101001B,D=10111010B。
试写出下列运算的十进制数真值和各标志位的值:A+B= 124 ,CF= 0 ,SF= 0 ,ZF=0 ,AF=0 ,PF=0 ,OF=0 .D-C-A= -97 。
3545233.doc 制作:江家宝《IBM—PC汇编语言程序设计》课后作业参考答案目录第一章:基础知识 ........................................................................................ 2第二章:80×86计算机组织......................................................................... 2第三章:80×86的指令系统和寻址方式..................................................... 3第四章:汇编语言程序格式........................................................................ 7第五章:循环与分支程序设计.................................................................... 9第六章:子程序结构 ................................................................................ 12第七章:高级汇编语言技术.................................................................... 20第八章:输入输出程序设计.................................................................... 22第九章:BIOS和DOS中断 (23)3545233.doc 制作:江家宝第一章:基础知识1.1、用降幂法和除法将下列十进制数转换为二进制数和十六进制数:(3) 4095 答:(3) 4095 =1111 1111 1111B=FFFH1.2、将下列二进制数转换为十六进制数和十进制数:(1) 10 1101 答:(1) 10 1101B=2DH=451.3、将下列十六进制数转换为二进制数和十进制数:(4) 1234 答:(4) 1234H=1 0010 0011 0100B=46601.4、完成下列十六进制数的运算,并转换为十进制数进行校核:(3) ABCD-FE 答:(3) ABCD-FEH=AACFH=437271.5、下列各数均为十进制数,请用8位二进制补码计算下列各题,并用十六进制数表示其运算结果。
第一次在线作业单选题 (共40道题)∙A、BX或CX∙B、CX或SI∙C、DX或SI∙D、SI或DI我的答案:D 此题得分:2.5分∙A、数据段中偏移量为3236H的字节∙B、附加段中偏移量为3234H的字节∙C、数据段中偏移量为3234H的字节∙D、附加段中偏移量为3236H的字节我的答案:A 此题得分:2.5分∙A、上一条指令的首地址∙B、下一条指令的首地址∙C、正在执行指令的首地址∙D、需计算有效地址后才能确定地址我的答案:B 此题得分:2.5分4.(2.5分)某系列微机对存储器的分段,如果每一个段最多的字存储单元(16位二进制)是32K,那∙A、20位∙B、16位∙C、15位∙D、12位我的答案:B 此题得分:2.5分∙A、AX,BX,CX,DX∙B、DS,ES,CS,SS∙C、SP,BP,IP,BX∙D、SI,DI,BP,BX我的答案:D 此题得分:2.5分6.(2.5分)要求将A,B两个字符的ASCⅡ码41H,42H顺序存放在连续两个字存储单元中,可选用∙A、DA1 D B ‘AB’∙B、DA1 DW ‘AB’∙C、DA1 B ABH∙D、DA1 W ABH我的答案:A 此题得分:2.5分∙A、DB 5H∙B、DW ABCDH∙C、DW ‘ABCD’∙D、DD ‘AB’我的答案:C 此题得分:2.5分∙A、通用寄存器∙B、堆栈∙C、程序计数器∙D、主存单元我的答案:D 此题得分:2.5分∙A、变址寻址∙B、寄存器寻址∙C、相对寻址∙D、寄存器间接寻址我的答案:D 此题得分:2.5分∙A、85B92H∙B、86192H∙C、BB690H∙D、12169H我的答案:A 此题得分:2.5分∙A、AX,BX,CX,DX∙B、BX,BP,SI,DI∙C、SP,IP,BP,DX∙D、CS,DS,ES,SS我的答案:B 此题得分:2.5分12.(2.5分)BUF DW 10H DUP(3 DUP(2,10H),3,5) 上述语句汇编后,为变量BUF分配的存∙A、80H∙B、100H∙C、124∙D、192我的答案:B 此题得分:2.5分∙A、物理地址∙B、偏移地址∙C、逻辑地址∙D、段地址我的答案:A 此题得分:2.5分∙A、字∙B、双字∙C、字节∙D、四字我的答案:C 此题得分:2.5分∙A、符号∙B、变量∙C、助记符∙D、标号我的答案:B 此题得分:2.5分∙A、DATA1 DW 1856H∙B、DATA1 DB 18H,56H∙C、DATA1 EQU 5618H∙D、DATA1 DB 18H,00H,56H,00H我的答案:B 此题得分:2.5分17.(2.5分)计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码,目前,微∙A、BCD码∙B、二进制码∙C、ASCII码∙D、十六进制码我的答案:C 此题得分:2.5分18.(2.5分)假设存储器中从7462H单元开始的四个相邻字节单元中的内容依次是32H,46H,52H,∙A、7462H∙B、7463H∙C、7464H∙D、7465H我的答案:C 此题得分:2.5分∙A、08090H∙B、08089H∙C、0808EH∙D、08450H我的答案:A 此题得分:2.5分∙A、16*SS+SP∙B、16*SS+BP∙C、16*DS+BP∙D、16*CS+BP我的答案:A 此题得分:2.5分∙A、16*SS+BP+DI∙B、16*ES+BP+DI∙C、16*DS+BP+DI∙D、16*CS+BP+DI我的答案:A 此题得分:2.5分22.(2.5分)一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一∙A、12C5BH∙B、12B6BH∙C、12C59H∙D、12BFEH我的答案:C 此题得分:2.5分∙A、2345H∙B、12345H∙C、12340H∙D、1234H我的答案:D 此题得分:2.5分∙A、变址寻址∙B、寄存器寻址∙C、相对寻址∙D、寄存器间接寻址我的答案:D 此题得分:2.5分∙A、DB 20 DUP(?)∙B、DW 20H DUP(?)∙C、DB 10H DUP(4 DUP(?))∙D、DD 08H DUP(?)我的答案:D 此题得分:2.5分∙A、BX∙B、BP∙C、SI∙D、DI我的答案:B 此题得分:2.5分∙A、ZF=1∙B、ZF=0∙C、SF=l∙D、SF=0我的答案:A 此题得分:2.5分∙A、304FH∙B、304EH∙C、3048H∙D、3049H我的答案:B 此题得分:2.5分∙A、185A2H∙B、00020H∙C、01004H∙D、0AB568H我的答案:B 此题得分:2.5分∙A、.64K个字∙B、32K个字节∙C、64K个字节∙D、.1兆个字节我的答案:C 此题得分:2.5分∙A、DIV 2∙B、DIV DX,2∙C、SAR DX,1∙D、SHL DX,1我的答案:C 此题得分:2.5分∙A、BX或CX∙B、CX或SI∙C、DX或SI∙D、SI或DI我的答案:D 此题得分:2.5分∙A、TEST AL,02H ∙B、OR AL,AL∙C、CMP AL,BL∙D、AND AL,BL我的答案:D 此题得分:2.5分∙A、CMP∙B、SUB∙C、AND∙D、MOV我的答案:D 此题得分:2.5分∙A、XCHG AX,DS∙B、XCHG BL,[BX]∙C、XCHG AL,OFH ∙D、XCHG[SI],[DI]我的答案:B 此题得分:2.5分∙A、ADD BH,01H ∙B、OR BH,01H∙C、XOR BH,01H ∙D、TEST BH,01H 我的答案:B 此题得分:2.5分∙A、NOT AL∙B、AND AL,0FH ∙C、XOR AL,0FH ∙D、OR AL,0FH我的答案:C 此题得分:2.5分∙A、SHR AX,1∙B、SHL AX,1∙C、ROL AX,1∙D、RCR AX,1我的答案:B 此题得分:2.5分39.(2.5分)ORG 0030HDA1 DB 0,‘0’,30HDW DA1数据为3000H字存储单元的偏移地址是:∙A、0030H∙B、0031H∙C、0032H∙D、0033H我的答案:A 此题得分:2.5分40.(2.5分)BUF DW 10H DUP(3 DUP(2,10H),3,5)上述语句汇编后,为变量BUF分配的存储单元字节数是:∙A、80H∙B、100H∙C、124∙D、192我的答案:B 此题得分:2.5分-------------------------------------------------分割-----------------------------------------------------第二次在线作业单选题 (共30道题)∙A、对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令∙B、对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令∙C、对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令∙D、对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令我的答案:C 此题得分:2.5分∙A、MOV AL,[BX+SI]∙B、JMP SHORT DONING∙C、DEC [BX]∙D、MUL CL我的答案:C 此题得分:2.5分∙A、外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内∙B、外循环初值应置外循环之内;内循环初值应置内循环之内∙C、内、外循环初值都应置外循环之外∙D、内、外循环初值都应置内循环之外,外循环之内我的答案:A 此题得分:2.5分∙A、ZF=0∙B、CF=0∙C、ZF=1∙D、CF=1我的答案:A 此题得分:2.5分∙A、ADD BUF1,BUF2∙B、JMP DWORD PTR DAT [BX]∙C、MOV AX,[BX+DI] NUM∙D、TEST AL,08H我的答案:A 此题得分:2.5分∙A、JMP NEXT∙B、JC NEXT∙C、INC BX∙D、SHL AX,1我的答案:D 此题得分:2.5分∙A、目标程序∙B、源程序∙C、可执行程序∙D、汇编程序我的答案:B 此题得分:2.5分∙A、XCHG AX,[BX][SI]∙B、MOV AX,[BX+SI]∙C、LEA AX,BX[SI]∙D、LEA AX,[BX][SI]我的答案:D 此题得分:2.5分∙A、1FFFH∙B、1998H∙C、2002H∙D、1FFEH我的答案:D 此题得分:2.5分∙A、把源操作数的符号位扩展到目的操作数中∙B、把AL中的符号位扩展到AH中∙C、把AH中的符号位扩展到AL中∙D、把AX中的符号位扩展到DX中我的答案:B 此题得分:2.5分∙A、CX=0,且ZF=0∙B、CX=0,或ZF=1∙C、CX≠0,且ZF=0∙D、CX≠0,或ZF=1我的答案:B 此题得分:2.5分∙A、MOV CS,AX∙B、MOV DS,AX∙C、MOV SS,AX∙D、MOV ES,AX我的答案:A 此题得分:2.5分∙A、MOV BX,VAR∙B、LDS BX,VAR∙C、LES BX,VAR∙D、LEA BX,VAR我的答案:D 此题得分:2.5分∙A、3211H∙B、320EH∙C、320FH∙D、3212H我的答案:B 此题得分:2.5分15.(2.5分)汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省∙A、名字项∙B、操作项∙C、操作数项∙D、注释项我的答案:B 此题得分:2.5分∙A、伪指令∙B、指令∙C、标号∙D、助记符我的答案:B 此题得分:2.5分∙A、1400H∙B、77F8H∙C、0000H∙D、0FFFFH我的答案:A 此题得分:2.5分∙A、XCHG AX,DS∙B、XCHG AX,[BX]∙C、XCHG AX,CSH∙D、XCHG[SI],[DX]我的答案:B 此题得分:2.5分19.(2.5分)设数据段有:DA1 DB XX ;是任一数据DA2 DB OFEH 下列两条指令:MOV DL,∙A、.0FFH或0FEH∙B、只能是0FEH∙C、只能是0FFH∙D、只能是01H我的答案:A 此题得分:2.5分20.(2.5分)ORG 100H NUM EQU 8042H DA1 DB 56H MOV BX,0FFSET DA1 上述程序段∙A、56H∙B、100H∙C、101H∙D、102H我的答案:B 此题得分:2.5分∙A、段内转移直接寻址∙B、段内转移间接寻址∙C、段间转移直接寻址∙D、段间转移间接寻址我的答案:C 此题得分:2.5分∙A、DIV 2∙B、DIV DX,2∙C、SAR DX,1∙D、SHL DX,1我的答案:C 此题得分:2.5分∙A、指令XOR AX,AX执行后,AX内容不变,但设置了标志位∙B、指令OR DX,1000H执行后,将DX最高位置1,其余各位置0∙C、指令AND AX,OFH执行后,分离出AL低四位∙D、NOT AX,执行后,将AX清0我的答案:C 此题得分:2.5分∙A、ROL CL,1 ROL CL,1∙B、MUL 4∙C、SHL CL,1 SHL CL,1∙D、MOV CL,2 SHL CL,CL我的答案:C 此题得分:2.5分∙A、MOV [DI],[SI]∙B、MOV [DX+DI],AL∙C、MOV WORD PTR [BX],0100H ∙D、MOV AL,BX我的答案:C 此题得分:2.5分∙A、ZF=1∙B、ZF=0∙C、SF=1∙D、SF=0我的答案:A 此题得分:2.5分∙A、MOV [BX+SI],BX∙B、MOV CL,[BP+DI]∙C、MOV CS,AX∙D、MOV DS,AX我的答案:C 此题得分:2.5分∙A、AL=57H,BL=24H∙B、AL=33H,BL=24H∙C、AL=57H,BL=33H∙D、AL=33H,BL=0我的答案:B 此题得分:2.5分∙A、0FFH∙B、80H∙C、00H∙D、0FEH我的答案:A 此题得分:2.5分30.(2.5分)已知BX=028AH,SI=0294H,(DS:051EH)=5432H。
汇编语⾔第⼀课作业1.11、1个cpu的寻址能⼒为8KB,那么它的地址总线宽度是⼏?答案:寻址能⼒为8KB,8*1024=8192。
2的13次⽅等于8192,所以地址总线宽度为13,也就是说有13根地址总线。
引申:为什么我们市⾯上的内存是128M、256M 、512M、1G、2G、4G、8G内存。
全都跟2的⼏次⽅有关系。
xp为什么只能认识3.25G内存?跟cpu的寻址能⼒有关系。
寻址能⼒也就代表着cpu能利⽤的内存。
我们常说32位系统,2的32次⽅是多少呢?应该就是4GB。
也就是说32位的cpu就是说32根地址总线。
2、1KB的存储器有⼏个存储单元,编号从⼏到⼏?答案:1KB=1024byte,就是1024个存储单元,编号从0到1023。
引申:从这⾥可以知道为啥数组的下标是从零开始。
3、1KB的存储器有⼏个bit,有⼏个byte?答案:1KB=1024个byte,1KB=1024*8个bit。
4、1GB、1MB、1KB分别是多少byte?答案:1KB=1024byte,1MB=1024KB-1024*1024byte,1GB=1024MB=1024*1024KB=1024*1024*1024byte。
引申:从上⾯发现不了什么,这样看:1KB=2的10次⽅byte,1MB=2的20次⽅byte,1GB=2的30次⽅byte,不⽤算就知道1TB等于2的40次⽅byte。
500G的硬盘应该能存放2的39次⽅个byte(不考虑500G的硬盘在电脑上实际只有465G左右)。
5、8080、8088、80286、80386的地址总线宽度分别为16根、20根、24根、32根,它们的寻址能⼒分别为多少?答案:2的16次⽅是64KB,2的20次⽅是1MB,2的24次⽅是16MB,2的32次⽅是4GB。
6、8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根,它们的传送数据分别为多少?答案:8根为1byte,16根为2个byte,32根为4个byte。
汇编语言复习题注:蓝色标记的为答案,此答案仅供参考,大家自己做一下或看以一下,认为不对的地方,可以提出来一起讨论一下,另外看一下课后老师布置的相应作业。
在此文档最后最后附有课后四、六章的答案,大家抓紧时间复习哦!一、选择题1.把要执行的程序与库文件连接起来形成可执行文件的系统程序是( B ) 。
A.汇编程序B.连接程序C.机器语言程序D.源代码程序2.在8088/8086的寄存器组中,CPU确定下一条指令的物理地址时需要用到的寄存器对是( C )。
A..SS和SPB.DS和DIC.CS和IPD.ES和SI3.为了使主机访问外设方便起见,外设中的每个寄存器给予一个( C )。
A.物理地址B. 逻辑地址C. 端口地址D.段地址4.MOV AX,3064H,该指令中源操作数采用的寻址方式是( A )。
A.立即B.直接C.寄存器相对D.寄存器间接5.换码指令的助记符是( C )。
A. XCHGB. LEASC.XLATD. MOV6.如果A≥B(A、B有符号数)发生转移,应选择的条件转移指令是 ( JGE )。
7.下列符号中,可用作标识符的是( C )。
A.MOVB.AXC.MSG1D.1ABC8.X DB 10H DUP(1,2)内存变量定义语句拥有了( A )个字节的存储空间。
A.20DB.10DC.20HD.10H9.当DF=0时,执行串操作指令MOVSB,变址寄存器SI、DI的值将( C)。
A. 不变B.减1C.加1D.无法确定10.如下指令可将AX寄存器内容改变的是( A )。
A.AND AX , BX B.TEST AX , BX C.CMP AX ,BX D.XCHG AX , AX11.16位CPU支持的I/O地址范围是( D )。
A.0~0FFFFFH B.0~0FFFFH C.0~0FFFH D.0~0FFH12.MUL CL指令实现的功能是( A )。
A.无符号乘法:AX AL×CL B.有符号乘法:AX AL×CLC.无符号乘法:DX AL×CL D.有符号乘法:DX AL×CL13.DOS系统功能调用(INT 21H)中,显示字符串的功能号是( D )。
习题一1.在计算机内部,计算机能够直接执行的程序语言是。
A.汇编语言B.C++语言C.机器语言D.高级语言2.在堆栈段中,存放栈顶地址的寄存器是。
A.IPB.SPC.BXD.BP3.指令指针寄存器IP用来存放代码段中的偏移地址。
在程序运行的过程中,它始终指向。
A.下一条指令的首地址B.下一条指令的地址C.当前指令的首地址D.当前指令的地址4.编译程序的功能是。
A.检查源程序中的语法错误和逻辑错误B.将源程序编译成目标程序C.改正源程序中的语法错误D.将高级语言源程序翻译成汇编语言源程序5.用户为了解决自己的问题,用汇编语言所编写的程序,称为。
A.目标程序B.源程序C.可执行程序D.汇编程序6.计算机中用来存储程序、数据等信息的记忆装置是。
A.控制器B.运算器C.CPUD.存储器7.在宏汇编中,源程序必须通过____编译_______生成目标代码,然后用连接程序将其转化为可执行文件,该文件可在系统中运行。
习题二1当SS=3000H,SP=0100H时,执行PUSH AX指令后,堆栈顶部的物理地址是()A.30100HB.30098HC.30102HD.300FEH2设10000010B分别以原码、补码及反码表示时,则对应的十进制数依次是()A.-82、-126、-2B.-2、-125、126C.-2、-126、-125D.-82、-125、1253标志寄存器中属于控制标志位的是()A.DF,OF,SFB.DF,IF,TFC.OF,CF,PFD.AF,OF,SF4设(AX)=4544H,在执行指令”SUB AH,AL”之后,()A.CF=0,OF=0B.CF=0,OF=1C.CF=1,OF=0D.CF=1,OF=15若寄存器AX、BX、CX、DX的内容分别为18,19,20,21时,依次执行PUSH AX,PUSH BX,POP CX,POP DX后,寄存器CX的内容为______19____________。
15春《汇编语言》作业1试卷总分:100 测试时间:--一、单选题(共 8 道试题,共 100 分。
)V1. 下列叙述正确的是(A. 对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令B. 对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令C. 对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令D. 对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令满分:12.5 分2. 在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来( ) 。
A. 占内存空间小,但速度慢B. 占内存空间大,但速度快C. 占内存空间相同,速度快D. 占内存空间相同,速度慢满分:12.5 分3.A. AB. BC. CD. D满分:12.5 分4. 一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是( ) 。
A. 12CSBHB. 12B6BHC. 12C59HD. 12BFEH满分:12.5 分5.A. AB. BC. CD. D满分:12.5 分6. 指令MOV AX,COUNT[BX]完成的操作是( ) 。
A. 从存储单元读出一个字送AXB. 从存储单元读出一个字节送AXC. 将AX中的一个字节写入存储单元D. 讲AX中的一个字写入存储单元满分:12.5 分7.A. AB. BC. CD. D满分:12.5 分8. 串指令中的目的操作数地址是由( ) 提供。
A. SS:[BP]B. DS:[SI]C. ES:[DI]D. CS:[IP]。
大工12春《汇编语言程序设计》在线作业1 大工12春《汇编语言程序设计》在线作业11. 在计算机中表示存储容量时,下列描述中正确的是A. 1KB=1024MBB. 1KB=1000BC. 1MB=1024KBD. 1MB=1024GB正确答案:C 满分:4 分得分:42. 执行除法指令后,影响的标志位是:()A. CF,OFB. SF,ZFC. CF,OF,SFD. AF,CF,OF,PF,SF,ZF都不确定正确答案:D 满分:4 分得分:43. 将十六进制数8765转化为二进制数,结果是:()A. 1000101101100101B. 1000011101100110C. 1000011110100101D. 1000011101100101正确答案:D 满分:4 分得分:44. 8位二进制补码整数的最小值是:()A. -126B. -127C. -128D. -129正确答案:C 满分:4 分得分:45. 在8086/8088中,寄存器BP的功能是:()A. 存放段的首地址B. 用于变址操作C. 存放堆栈段的偏移地址D. 存放代码段的偏移地址正确答案:B 满分:4 分得分:46. 指令MOV SI,10的源操作数的寻址方式是:()A. 变址寻址B. 立即数寻址C. 寄存器寻址D. 寄存器间接寻址正确答案:B 满分:4 分得分:47. 下列是8位二进制数的补码,其中真值最大的是:()A. 10001000B. 11111111C. 00000000D. 00000001正确答案:D 满分:4 分得分:48. 在计算机中一个字节由()位二进制数组成A. 2B. 4C. 8D. 16正确答案:C 满分:4 分得分:49. 若(AX)=3500H,(CX)=56B8H,当 AND,AX,CX指令执行后,(AX)=()A. 1400HB. 77F8HC. 0000HD. 0FFFFH正确答案:A 满分:4 分得分:410. 能保存各逻辑段的起始地址的寄存器称为:()A. 段寄存器B. 地址寄存器C. 数据寄存器D. 计数寄存器正确答案:A 满分:4 分得分:4大工12春《汇编语言程序设计》在线作业1试卷总分:100 测试时间:-- 试卷得分:96单选题多选题判断题二、多选题(共 5 道试题,共 40 分。
首页一.单选题(共40题,40.0分)1AOV网是一种( )。
•A、有向图•B、无向图•C、无向无环图•D、有向无环图正确答案: D 我的答案:D得分: 1.0分2指令“MOV AX,0FH XOR 1111B”执行后的结果是( )。
•A、0FFFFH→AX•B、0FH→AX•C、1111B→ AX•D、0→AX正确答案: D 我的答案:D得分: 1.0分3已知(AL)=35H, (BL)=57H,执行指令ADD AL, BLDAA后,AL的值为()。
•A、92HB、8CHC、92D、CH正确答案: A 我的答案:A得分: 1.0分4设Huffman树的叶子结点数为m,则结点总数为( )。
•A、2m•B、2m-1•C、2m+1•D、m+1正确答案: B 我的答案:B得分: 1.0分5以下程序段中,有数据2000H的字单元的偏移量分别是( )。
ORG 20HVAR1 DB 0,’0’,20H,0,20HDW VAR1•A、03H•B、21H•C、22H•D、23H•E、24H正确答案: D 我的答案:E得分: 0.0分6图所示二叉树结点的前序遍历的序列为( )。
•A、E、G、F、A、C、D、B•B、 E、A、G、C、F、B、D•C、E、A、C、B、D、G、F•D、E、G、A、C、D、F、B正确答案: C 我的答案:C得分: 1.0分7ORG 100HNUM EQU 42HDA1 DW $+56H……MOV BX,0FFSET DA1上述程序段执行后BX中的值是( )。
•A、42H•B、156H•C、100H•D、157H正确答案: C 我的答案:C得分: 1.0分8对线性表进行二分法查找,其前提条件是( )。
•A、线性表以链接方式存储,并且按关键码值排好序•B、线性表以顺序方式存储,并且按关键码值的检索频率排好序•C、线性表以顺序方式存储,并且按关键码值排好序•D、线性表以链接方式存储,并且按关键码值的检索频率排好序正确答案: C 我的答案:A得分: 0.0分9为实现单步操作,即每执行完一条指令就停下来,必须设置标志位( )。
汇编语言(本科)武汉理工大学在线作业一、判断(共计100分,每题2.5分)1、在汇编语言中,寻找操作数的过程就是操作数的寻址一般来说,存放在指令代码中的操作数称为立即数,存放在CPU的内部寄存器中的操作数称为寄存器操作数,存放在内部存储器中的操作数称为存储器操作数。
A.正确B.错误答案:【A】2、在1000H单元中有一条二字节指令JMP SHORT LAB,如果其中的偏移量分别为30H、6CH、0B8H,则转向地址LAB的值分别为1030H、106CH、10B8H。
A.正确B.错误答案:【A】3、单元中有一条二字节指令,化为二进制是11001101,化为八进制是315。
A.正确B.错误答案:【A】4、数-27的补码表示是11100101(8位),扩展到16位为1111111111100101。
A.正确B.错误答案:【A】5、求出十六进制数9D60与十六进制数62A0之和,并根据结果设置标志位SF、ZF、CF和OF的值,和为0000H;SF=0,ZF=1,CF=1,OF=0。
A.正确B.错误答案:【A】6、假设程序中的数据定义如下:PARTNO DW ?PNAME DB 16 DUP (?)COUNT DD?PLENTH EQU $-PARTNO问PLENTH的值为16H。
A.正确B.错误答案:【A】7、伪指令是它是在对源程序汇编期间由汇编程序处理的操作,它不产生任何机器代码。
A.正确B.错误答案:【A】8、十六进制数0FFF8H表示的十进制正数为65528,表示的十进制负数为-8。
A.正确B.错误答案:【A】9、寻找操作数的过程就是操作数的寻址方式。
A.正确B.错误答案:【A】10、要求屏蔽寄存器AL第0,1两位,则要执行指令AND AL,0FCH;如果要求把AL的第0,1位变反,可使用指令XOR AL,03H。
A.正确B.错误答案:【A】11、SP称为堆栈指示器,它用来存放当前栈顶的EA。
A.正确B.错误答案:【A】12、将二进制数111110化为十进制是62,将十进制数31化为二进制为11111,化为八进制为37。
《微机原理与汇编语言》作业一答案一、填空题1、计算机中的CPU由运算器和控制器组成。
2、根据传送的内容不同,微型计算机系统总线可以分为数据总线、地址总线和控制总线。
3、(513.85)10 = ( 201.D999 )16 (105.3)8 = ( 69.375 )10(9E.A)16 = ( 236.5 )8(1001.11001 )2 = ( 9.78125 )104、“9”的ASCII码是39H ,“DEL”的ASCII码是7FH ,“K”的ASCII码是4BH 。
5、假定机器的字长为8位,且最高位为符号位,则(-127)10的原码用8位二进数表示为11111111 ,其补码用8位二进数可表示为10000001 。
6、[4C10H]补= [ 4C10H ]原[9DH]补= [ -63H ]原7、I/O端口有两种编址方式,分别是统一编址和独立编址。
8、有一个由20个字组成的数据区,其起始地址为610AH:1CE7H,则数据区首地址为62D87H ,数据区末地址为62DAEH 。
9、8086寻址I/O端口时,使用16 条地址总线,可以寻址32K 个字端口或64K 个字节端口。
二、名词解释1、字节、字、字长字节:是计算机中通用的的基本单元,它由8个二进制位组成,即8位二进制数组成一个字节。
字:是计算机内部进行数据处理的基本单位。
对于16位微型计算机而言,字由两个字节组成,每个字节长度为8位,分别称为高位字节和低位字节。
对于32位的微型计算机,它由4个字节组成,组合后为双字。
字长:是计算机在交换、加工和存放信息时,其信息位的最基本长度,决定了系统一次传送的二进制数的位数。
各种类型的微型计算机字长是不相同的,字长越长的计算机,处理数据的精度和速度就越高。
因此,字长是微型计算机中最重要的指标之一。
2、主频、基本指令执行时间主频:也称为时钟频率,通常是指计算中时钟脉冲发生器所产生的时钟信号的频率,单位为MHz(兆赫),它决定了微型计算机的处理速度。
作业11.1 将十进制数89转换成8位无符号二进制数。
1.2 将无符号二进制数1001 0010转换成十进制和十六进制。
1.3 将8位二进制数1001 0010和0100 1001分别作为有符号数的原码、反码和补码,将其转换为十进制数。
1.4 将十进制数125和-125分别转换成8位、16位和32位二进制补码。
1.5 用Windows计算器将十进制数4042322160和-252645136分别转换成32位无符号和有符号(补码)二进制数,再将结果转换成十六进制数,并分析结果。
1.6 分别求出二进制数1001 1110和0111 1000的“与”和“或”的结果。
1.7 8086处理器有哪几个16位通用寄存器?1.8 将双字类型数112233H(十六进制)存放在内存地址20000H中,占用哪几个字节单元,它们的地址和数值分别是什么?1.9 8086处理器用于运算的标志有哪几个?名称是什么?1.10 8086处理器分别执行8位二进制数01001010和11000010的加、减后,写出标志位CF、ZF、OF的值。
作业1答案1.1 010110011.2 146和92H1.3 原码:-18和73,反码:-109和73,补码:-110和73。
1.4 8位:0111 1101和1000 0011,16位:0000 0000 0111 1101和1111 1111 1000 0011,32位0000 0000 0000 0000 0000 0000 0111 1101和1111 1111 1111 1111 1111 1111 1000 0011。
1.5 1111 0000 1111 0000 1111 0000 1111 0000,F0F0F0F0H。
1.6 0001 1000和1111 1110。
1.7 AX、BX、CX、DX、SI、DI、BP、SP。
1.8 地址10000H存放33H,地址10001H存放22H,地址10002H存放11H,10003H存放0。
1.9 CF:进位/借位标志、ZF:零标志、SF:符号标志、PF:奇偶标志、OF:溢出标志、AF:半进位标志。
1.10 加运算后:CF=1,ZF=0,OF=0。
减运算后CF=1,ZF=0,OF=1。
作业22.1 8086汇编中的操作数有哪几类?存储器操作数寻址方式有几种?2.2 汇编语句分为指令和伪指令,汇编指令由哪几部分构成?这些部分中哪些部分是不可缺省的?2.3 传送类指令综合练习。
汇编语句片段如下,顺序执行过程中填写右侧寄存器和存储器内容。
MOV SI, 120 ; ①SI = ( )HMOV AX, 0AA70HMOV [SI], AXMOV BX, 3020 ; ②BX = ( )HADD BX, AXMOV [SI+2], BXMOV [SI+4], SI ; ③[SI] = ( )H (6 Byte)PUSH DSLDS CX, [SI+1] ; ④DS = ( )H,CX = ( )HPOP DSLEA AX, [SI+4] ; ⑤AX = ( )HMOV BX, SIMOV AL, 2XLAT ; ⑥AL = ( )H作业2答案2.1 操作数有立即数、寄存器数和存储器数3类。
存储器操作数寻址方式有直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址和相对基址变址寻址共5种。
2.2 由标号、操作码、操作数和注释共4部分构成,其中操作码是不可缺省的。
2.3 结果十六进制顺序为①SI=0078H,②BX=0BCCH,③[SI]=70H AAH 3CH B6H78H 00H,④DS=78B6H、CX=3CAAH,⑤AX=007CH,⑥AL=3CH。
作业33.1 8位和16位有符号数所能表示的数据范围的十进制值是多少?3.2 可以作为加、减指令的操作数的寄存器有哪些?3.3 运算指令综合练习。
汇编语句片段如下,顺序执行过程中填写右侧寄存器和标志位内容。
MOV AX, 1240 ; ①AX = ( )HMOV BX, 70HADD AX, BX ; ②AX = ( )H CF = ( ) OF = ( )SUB AX, 1000 ; ③AX = ( )H CF = ( ) OF = ( ) ZF = ( ) OR AX, BX ; ④AX = ( )HNOT AX ; ⑤AX = ( )H CF = ( ) OF = ( )ADD AL, AH ; ⑥AX = ( )H CF = ( ) OF = ( ) PF = ( ) XOR AL, BL ; ⑦AX = ( )H CF = ( ) OF = ( )MOV CL, 4SHL AL, 1 ; ⑧AX = ( )H CF = ( )ROR AL, CL ; ⑨AX = ( )H CF = ( )MUL AH ; ⑩AX = ( )H CF = ( ) OF = ( )作业3答案3.1 8位:-128~+127,16位:-32769~+32767。
3.2 8位寄存器:AL、AH、BL、BH、CL、CH、DL和DH共8个。
16位寄存器:AX、BX、CX、DX、SI、DI、BP和SP共8个。
3.3 按顺序结果为:①AX=04D8H,②AX=0548H、CF=0、OF=0,③AX=0160H、CF=0、OF=0、ZF=0,④AX=0170H,⑤AX=FE8FH、CF=0、OF=0,⑥AX=FE8DH、CF=1、OF=0、PF=1,⑦AX=FEFDH、CF=0、OF=0,⑧AX=FEFAH、CF=1,⑨AX=FEAFH、CF=1,⑩AX=ADA2H、CF=1、OF=1。
作业44.1 分析程序。
以下程序片断执行结束后AX、BX、CX和DX的值各是什么?将LOOP语句更换成LOOPZ后再计算。
MOV AX, 1MOV BX, 2MOV CX, 3MOV DX, 4b001: INC AXADD BX, AXSHL DX, 1LOOP b0014.2 编写汇编程序片段。
AL存放着一个ASCII码,如果是小写字母,将其转换成大写。
4.3 编写汇编程序片段。
假设DS指向一个数据区,在偏移量为0处开始存放一个英文字符串,以“$”字符结束,计算该字符串长度。
4.4 编写汇编程序片段。
通过INT 21H,0AH系统调用输入一个字符串,再通过INT 21H,09号系统调用输出,在DEBUG下验证(代码部分在偏移量100H处,数据存储在偏移量200H处)。
作业4答案4.1 LOOP:AX=4、BX=0BH、CX=0、DX=20HLOOPZ:AX=2、BX=4、CX=2、DX=84.2 CMP AL, 61HJB b002CMP AL, 7AHJA b002SUB AL, 20Hb002: ......4.3 MOV BX, 0MOV CX, 0c001: MOV AL, [BX]CMP AL, 24HJE c002INC BXINC CXJMP c001c002: ......4.4 MOV BX, 0200H ; 定义数据区指针MOV AL, 0FFH ; 数据区第一个字节送255MOV DX, BXMOV [BX], ALMOV AH, 0AH ; 0AH系统调用输入INT 21HMOV AL, [BX+1] ; 实际输入字节数送ALMOV AH, 0ADD BX, AX ; BX指向输入的最后一个字节的下一个单元ADD BX, 2MOV AL, 24H ; 送“$”符号MOV [BX], ALMOV AH, 9 ; 09号系统调用ADD DX, 2 ; DX指向实际的输入字符串首个单元INT 21H作业55.1 写出简化段定义程序框架。
5.2 定义数据区。
定义一个表格,一共100条记录,每一条记录包括5个字段,分别是“编号”(16位无符号数)、“姓名”(长度为20字节字符串)、“地址”(长度为64字节的字符串)、“邮编”(长度为6字节字符串)和“电话”(长度为20字节的字符串)。
5.3 编写完整程序。
连续显示按键的键码和其ASCII码的十六进制值,按ESC键退出。
5.4 编写完整程序(选作)。
通过INT 21H, 0AH系统调用从键盘输入一个字符串(ASCII码,包括英文字母、数字、空客、英文逗号和句号),最长255字节。
将每一句话第一个词首字母变为大写,其余全部为小写。
通过INT 21H,09输出结果。
作业5答案5.1 简化段定义程序框架.MODEL SMALL ; 定义程序模式:小模式.386.STACK ; 堆栈段,默认1024B.DATA ; 数据段开始…; 数据段.CODE ; 代码段开始.STARTUP ; 程序起始点,设定DS, SS…; 代码段.EXIT 0 ; 程序结束点,返回操作系统END ; 汇编结束5.2 采用结构Person表示一条记录信息Person STRUCT ; 结构名:personId WORD 0 ; 编号:字0~65535PName BYTE 20 DUP(0) ; 姓名:20个ASCII码或10个汉字Addr BYTE 64 DUP(0) ; 地址:64字节,32汉字Post BYTE 6 DUP(0) ; 邮编:6位数字Phone BYTE 20 DUP(0) ; 电话:20位ASCII码Person ENDS ; 结束PList Person 100 DUP(〈〉) ; 定义结构数组(表)5.3.MODEL SMALL.STACK.DATAs01 db ' ASCII code = 's02 db ?, ?, 'H', 0dh, 0ah, '$'.CODE.STARTUPkpress: mov ah, 1 ; 等待按键,获取按键的ASCII码int 21hcall tascii ; 转换AL成两位ASCII码,存放在AH和ALmov s02, ah ; 显示准备mov s02+1, almov ah, 9 ; 显示lea dx, s01int 21hcmp word ptr s02, 4231h ; 按键是ESC键吗jne kpress ; 如果不是ESC则转移到开始.EXIT 0tascii PROCmov ah, aland al, 0fhadd al, 30hcmp al, 39hjbe atof1add al, 7atof1: and ah, 0f0hshr ah,1shr ah,1shr ah,1shr ah,1add ah, 30hcmp ah, 39hjbe atof2add ah, 7 atof2: rettascii ENDPEND。