从每小题的四个备选答案中选絀一个正确答案,并将正确答案的番号填人括号内
1.用来存放下一条将要执行的指令执行三个步骤地址的寄存器是 (B )
2.要使串处理从低地址向高地址进行,应把标志位置为 (D )
3.使状态标志位CF清零的错误指令执行三个步骤是 (C )
5.汇编源程序出现语法错误的指令执行三个步骤有 (D )
6.下列串操作指令执行三个步骤中必须同时指明源串和目的串地址的指令执行三个步骤是 (D )
7.设BL中有一无符号数,实现把BL中的数乘以2应选用嘚指令执行三个步骤是 (B )
9.CF=1 时转移到目标地址的条件转移指令执行三个步骤是 (B )
10.在执行NEG指令执行三个步骤时,对标志位CF有影响其影响的规則是 ( C )
A.对正数求补时,CF=0 B.对负数求补时CF=0
C.对非零数求补时,CF=1 D.对零求补时CF=1
11.算术右移SAR和逻辑右移SHR两条指令执行三个步骤执行后结果完铨相同的情况是(A )
A.目的操作数最高位为0 B.目的操作数最高位为1
C.目的操作数为任意情况 D.无论什么情况都不可能相同
13.指令执行三个步骤嘚操作数中,允许出现表达式例如BUF1与BUF2均为变量名,下面指令执行三个步骤中语法正确的是 (D ) A.MOV AXBUFl*BUF2
14.下面指令执行三个步骤中,操作数的寻址方式为寄存器间接寻址的指令执行三个步骤是 (C )
1.假设某个字的值是1234H其低位字节哋址是20H,高位字节地址是21H那么该字的字地址是________。
4.指令执行三个步骤“MOV AX20H[SI]”中源操作数的物理地址表达式是______。
5.乘法指令执行三个步骤語句“MUL CL”16位的乘积存放在______中。
1.在系统中存储器是分段的,每段最大长度是_______字节段内偏移地址从_______到_______。
2.在程序调试时显示某指令执行彡个步骤存放地址是2340H:0056H,则物理地址是_______
3.汇编语言源程序中的语句有三种类型,它们是_______语句_______语句和_______语句。
5.执行段间返回指令执行三个步驟RET时将栈顶的一个字弹出到_______后,又弹出一个字到_______寄存器中
1、在指令执行三个步骤系统中,段内、段间返回均为RET指令执行三个步骤试囙答:
(1)执行段内返回RET指令执行三个步骤时,执行的操作是:
(2)执行段间返回RET指令执行三个步骤时执行的操作是:
2、用两种办法,汾别只用一条指令执行三个步骤实现将DA1数据区中数据个数送入CX
4、请指出下列指令执行三个步骤错误原因:
变量COUNT的值是, 其表示的意义是
试回答:上述程序段执行后(A)= ;(B)= 。
(1)DA1的偏移地址是:( )
(2)COUNT的值是:( )
(3)DA2+5字节单元的内容是 :( )
9、下列程序段完成什麼工作?
10、下列语句在存储器中分别为变量数据区分配多少个字节单元
12、选用NOT,ANDOR XOR逻辑指令执行三个步骤编写一指令执行三个步骤序列,實现将AL第0位第2位同时置1,其他位变反
13、在某子程序的开始处要保护AX,BXCX,DX四个寄存器信息在子程序结束时要恢复这四个寄存器信息。例如:
试写出恢复现场时的指令执行三个步骤序列
14、完成下列操作,选用什么指令执行三个步骤:
(1)将AX的内容减去0520H,和上次运算嘚借位;
(2)将变量名TABL的段地址送AX;
请写出用一条指令执行三个步骤实现取D1的偏移地址送给SI中的三种方法
16、在系统中,存储器是分段组織的按各段实际长度定位。已知(DS)=2150H(CS)=2640H,(SS)=2250HSP=100H,问题:
(1)数据段起始地址是多少
(2)计算数据段中最多可以存放多少个字节數据?(要有具体计算式)
(3)代码段最多可以存放多少个字节程序代码说明理由。
17、已知数据段定义如下:
18、分别说明下列两组指令執行三个步骤中两条指令执行三个步骤操作的相同点和不同点
19、下列每组指令执行三个步骤中的两条指令执行三个步骤有否区别?若有请說出它们的不同点。
20、系统功能调用的方法如何?举例说明
A.CL寄存器内容取反
B.BX寄存器的低四位置1
C.AX寄存器的低四位清0
D.CX寄存器的低四位变反
E.用TEST指囹执行三个步骤测试DL寄存器的第3位和第6位是否为零。
23、假定(DX)=B(CL)=0.3,(CF)=1试确定下列各条指令执行三个步骤单独执行后,DX中的值
24、写出完成下述功能的程序段:
(1)传送25H到AL寄存器
(2)将AL的内容乘以2
(3)传送15H到BL寄存器
(4)AL的内容乘以BL的内容
并请写出最后(AX)=?
25、写一程序段求双字长数DX∶BX的相反数。
26、在指令执行三个步骤系统中段内、段间返回均为RET指令执行三个步骤。试回答:
(1)执行段内返回RET指囹执行三个步骤时执行的操作是:
(2)执行段间返回RET指令执行三个步骤时,执行的操作是:
上述MOV指令执行三个步骤序列执行后的结果是什么
29、设DS=3A00H,ES=4A00H在段地址:偏移地址=4A00H:9000H 字单元中有数据3C50H。请用一条指令执行三个步骤将数据3C50H装入AX寄存器(不得使用立即数)
已知上述两條MOV语句有语法错误,请根据注释字段的要求将其改正(分别用一条语句改正)
请用两种办法,分别只用一条指令执行三个步骤实现将DA1数據区中数据个数送入CX
33、用三种不同方法实现在字存储单元DB1中存储2000H。
上述程序运行后AH= ,AL=
上述程序段运行后,。
执行上述三条指令执荇三个步骤后,
试回答(1)上述程序段执行后BUF2开始的6个字节存储单元的内容是什么?
(2)在程序功能不变的情况下,AND AL0FH指令执行三个步驟可否用SUB AL,30H指令执行三个步骤替代
上述程序段运行后,DX中的值表示的意义是什么?
试问:A.程序段执行后 DA2字节单元内容是什么?
B.在程序段功能不变情况下,是否可用SHR指令执行三个步骤代替SHL指令执行三个步骤?
试回答:A.程序段执行后(DA2)=______;
B.在程序段功能不变的情况下,是否可以鼡指令执行三个步骤SAR替代指令执行三个步骤SHR?
14、设寄存器ALBL,CL中内容均为76H
上述程序段运行后,S9开始的10个字节存储单元内容是什么
19、现有洳下程序段:
请回答:(1)该程序段已占有的存储字节数是多少?
(2)符号名DA4的值是多少符号名DA5的值是多少?
20、执行下列程序段后回答问题。
请问:(1)该程序完成的功能是什么
(2)程序执行后指出RETT字节单元中的内容是什么?
试回答:(1)子程序的功能是什么
请问:(1)该程序完成的功能是什么?
(2)该程序循环的次数是多少
24、阅读如下程序段,回答所提出的问题假定X1,X2XN为无符号数。
程序段執行完回答下述问题
25、对于下面的数据定义,各条MOV的指令执行三个步骤单独执行后有关寄存器的内容是什么? FLDB DB ?
26、下面程序段执行完后,AL嘚内容是什么?
27、试问下面的程序段完成的功能是什么?
28、假设X和X+2单元的内容为双精度数PY和Y+2单元的内容为双精度数Q(X和Y为低位字),试说明丅列程序段做什么工作?
用数学表达式指明程序功能:_______
试回答:A.上述程序段执行后(A)= (B)= 。
34、现有下列程序段:
试问上述程序段运荇后
(AX)= ,(BL)= (DX)= 。
35、分析下面程序段
试问程序段执行后(BL)= ,(AL)=
请回答程序段运行后:(AL)= ,(BL)=
试回答:(1)上述程序段的功能是什么?
(2)如从键盘输入字符‘4’程序段有什么结果?
上述程序运行后试回答:
(1)当(AL)= 时,程序轉向BRCH1
(2)当(AL)= 时程序转向BRCH2
(3)当(AL)= 时,程序转向BRCH3
上述程序段运行后HCOD和HCOD+1两字节单元内容是什么?
上述程序段运行后从B单元开始依次存放的数据的多少?
43、已知BUF开始的数据区中存放有10个大、小写字母下面程序段完成的功能是什么? MOV CX10
执行上述三条指令执行三个步骤后,AX= BX=
46、程序段完成什么功能?
试回答(1)上述程序段执行后,BUF2开始的6个字节存储单元的内容是什么?
上述程序段运行后S9开始的10个字节存储单元内容是什么?
1、下面程序段的功能是把DA1数据区的数0-9转换为对应的ASCII码并存入ASCI数据区。试完善本程序段
2、设A,B是长度为10的字节数組用串操作指令执行三个步骤编写程序实现A,B两数组内容的相互交换试完善本程序。
3、某程序段欲用单个字符显示的2号DOS功能调用去显礻一字符串“STRING”试在下面空白处填上适当的指令执行三个步骤 (每一空白处仅填一条指令执行三个步骤)。
4、程序段的功能是依次产生0~9的10个ASCII码并存入BUF1数据区,请在空白处填上指令执行三个步骤(每一空白处仅填一条指令执行三个步骤)
5、下面程序段是判断寄存器AH和ALΦ第3位是相同,如果相同AH置0,否则AH置全1试把空白处填上适当指令执行三个步骤。
6、以BUF为首址的字节单元中存放了COUNT个无符号数,下面程序段是找出其中最大数并送入MAX单元中
7、在表TABLE处存放着N个无符号字节数,求表中前10个字节数的总和并保存在AX寄存器中如果总和值超过AX寄存器的容量,则置AX寄存器内容不变请在程序中的空格处填入适当指令执行三个步骤使其完整。
8、BEG为起始地址的存储区域中存放有100个字節数据现将其首、尾颠倒过来,重新排放这100个字节数据请在程序中的空格处填入适当的指令执行三个步骤使其完整。
9、下列程序段求數组FLD的平均值结果在AL中。请将程序填写完整(不考虑溢出) FLD DW 10 -20, 30 -60, -71 80, 79 56
10、已知数据段DAT单元存放某一数N(-6≦N≦6)下面的程序段用查表法求数N的平方值,结果送SQR单元请将程序填写完整。
11、设AXBX中的数一个为正数,一个为负数下面程序段完成将正数送到PLW单元中存放,请將程序中所缺指令执行三个步骤语句补上
12、现有下列数据段:
下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF嘚最后一个单元,STR1中最后一字符送到BUF的第一个单元)试把程序中所空缺的指令执行三个步骤填上。
13、DA1数据区中有50个字节数据下面程序段将每个数据的低四位变反,高四位不变并依次存入DA2数据区中。请将程序补充完整
14、下面程序段完成将存储单元A1中一个压缩型BCD码拆成②个非压缩型BCD码,高位BCD码存放在A3单元低位BCD码存放在A2单元,再分别转换为对应的ASCⅡ码请将程序补充完整。
15、下面程序段是判断寄存器AH和ALΦ第3位是相同如相同,AH置0否则AH置全1。试把空白处填上适当指令执行三个步骤
16、程序段的功能是依次产生0~9的10个ASCII码,并存入BUF1数据区請在空白处填上指令执行三个步骤(每一空白处仅填一条指令执行三个步骤)。
17、下面程序执行后AL的内容为ARRAY数组中的最小数,请在空白處各填上一条指令执行三个步骤 ARRAY DB 3,5- 3,- 24,5- 8,6
18、下面程序段的功能是把DA1数据区的数0-9转换为对应的ASCII码,并存入ASCI数据区试完善本程序段。
1、设在数据段中有XY两变量(字节单元),试编写程序段计算(只写有关程序功能的指令执行三个步骤):
2、A1单元开始定义了一长度为N的芓符串找出其中所有的小写字母并存放到以A2单元开始的存储区中。统计出小写字母的个数存放到SL单元中。请编一完整的源程序
3、已知DAT1字节单元有一个数据,试编制一程序段将该数据的低4位变为1010B最高位(第7位)置1,其余3位不变结果送DAT2字节单元。
4、在N1和N2两数据区中汾别有10H个带符号数。试编制一源程序找出对应项中较小的数据,并将这些较小的数据存入N3数据区中(要求:对应项比较时必须用CMPS指令执荇三个步骤) DATA SEGMENT
5、加密移动字符串,设缓冲区SBUFF中有20个小写字母a将每个a加上它相对于缓冲区的位移量后传送到缓冲区DBUFF。
6、在BUF1和BUF2两个数据区Φ各定义有10个带符号字数据,试编制一完整的源程序求它们对应项的和,并将和数存入以SUM为首址的数据区中
7、试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来
8、设在内存单元SQTAB首址开始存放了0~15的平方数表。要求用直接查表法编一程序求絀A单元中给定数(<=15 =的平方值送B单元保存。
9、已知存储器中有一个首地址为ARRAY的100个字数组现要求把数组中的每个数加1(不考虑溢出的可能性),试编制完成此功能的程序段
10、.编写一段程序,如果字节变量TESTONE和TESTTWO相等则调用子程序,显示?#?;否则调用NOTSAME子程序显示?!?。
11、已定义了两个整数变量A和B试编写程序完成下列功能:
A.若两个数中有一个是奇数,则将奇数存入A中偶数存入B中。
B.若两个数均为奇数则将两数均加1后存回原变量。
C.若两个数均为偶数则两个变量均不改变。
(要求各段定义完整并画出程序流程图)
12、假设DATAX和DATAX+2单元存放雙字P,DATAY和DATAY+2单元中存放双字Q编程计算2P-Q,差在DXAX中。若OF=1程序转OVERFLOW,否则转NOOVER(只写与试题要求有关的指令执行三个步骤语句)
13、已知在数据區BUF1和BUF2分别存放20个字节数据。编程检查两数据区中的数据是否相同若完全一致,则将标志单元FLAG置FFH否则置0,并将第一次出现的不同数据的哋址分别存放在ADDR1和ADDR2单元中
要求:源程序格式完整。
14、设 X、Y、Z、W为十六位有符号数编程计算:
15、已知在以ARRAY为首地址的数据区中存放10个带符號字数据:
编程将ARRAY分成两个数组:正数数组P_ARY和负数数组N_ARY并分别显示正数项个数和负数项个数。
要求:源程序格式完整
16、X,YZ三个字节存储单元中各有一个无符号数,其中有两个数据相等找出不相等的哪个数,并存入W单元中试编写完成上述功能的程序段(只编写有关玳码部分,勿需书写源程序格式)
17、在数据段偏移量为100H开始的存储空间内连续存放着10个字节型无符号二进制数,编写一段程序求出该10個数之和,并将结果存放在寄存器AX中
18、试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来
2.已知有256个字节整数A1、A2、A3、??、A256 存放在以NUMBER为首址的数据区中,编写一完整源程序将其中的负数去除后剩下的正数重新排序存放在以PLUS开始的数据区中
19、在数據段中有一个首地址为array的未排序的50D字节的正整数数组,请编写一程序找出其中的最大数和最小数及最大数和最小数的个数。
20、A1单元开始萣义了一长度为N的字符串找出其中所有的小写字母并存放到以A2单元开始的存储区中。统计出小写字母的个数存放到SL单元中。请编一完整的源程序数据段如下: