全国1月高等教育自学考试汇编语言程序设计试题历年试卷
《汇编语言》试卷及答案

《汇编语言程序设计》试卷一、选择题(每题2分,共20分)1.能够被计算机直接执行的语言称为()。
a、高级语言b、汇编语言c、自然语言d、机器语言2.可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是()。
a、AX,BX,CX,DXb、DS,ES,CS,SSc、SP,BP,IP,BXd、SI,DI,BX,BP3.FR寄存器的各个标志位中,如果出现ZR,其含义为()。
A.结果为0 B.结果不为0C.结果溢出D.结果没有溢出4.汇编语言中,存储区的存储原则是()。
A.低低高高B.高高低低C.随机D.以上均错5.要将汇编语言目标文件生成可执行文件,应该通过()工具生成。
A.EDIT B.MASM C.LINK D.DEBUG6.下列哪种寻址方式无法访问存储单元()。
A.基址+变址B.直接寻址C.寄存器寻址D.寄存器的相对寻址7.非压缩的BCD码乘法调整指令为()。
A.AAS B.AAMC.DAA D.AAD8.要使一个段从一个节的位置开始存储,应该使用的定位类型为()A.PAGE B.PARA C.DWORD D.WORD9.DOS功能21H号的9号功能其入参为()A.DS:DX B.DS:SI C.DS:DI D.ES:DX10.控制计算机面板扬声器的端口地址为()。
A.71H B.70H C.16H D.61H二、填空题(每空2分,共20分)1. 计算机中的存储基本单位为___(1)____ 。
2. 8086/8088CPU中共有(2)个16位通用寄存器。
3. DEBUG命令中,查看内存单元内容的命令为(3),读当前寄存器的命令为(4),执行程序的命令为(5)。
4. MOV AX,[SI+BP+1234H]该指令的寻址方式为(6)。
5. 想要访问CMOS芯片,需要通过___ (7)端口和(8)___端口。
6. 变换键的状态字中,D5和D6位分别代表的是(9)以及(10)状态变化。
三、简答题(5*6分=30 分)1、简述汇编语言的编辑于调试步骤。
专升本《汇编语言程序设计》_试卷_答案

专升本《汇编语⾔程序设计》_试卷_答案专升本《汇编语⾔程序设计》⼀、(共75题,共150分)1. 使⽤寄存器_________作间址寄存器,寄存器间接寻址的操作数系统默认在堆栈段。
(2分)A.BXB.SPC.BPD.SI标准答案:C2. 两个有符号数相加,通过标志位_________判断结果是否溢出。
(2分)A.ZFB.CFC.SFD.OF标准答案:D3. 汇编语句MOV AX,[AX]语法错误,其原因是_________ (2分)A.源操作数和⽬的操作数不能同时为存贮器操作数.B.操作数类型模糊C.源操作数不能为⽴即⽅式D.AX不能⽤于寄存器间接⽅式标准答案:D4. 设VAR为字变量, A为符号常量,下⾯四个语句中有⼀个错误的,这个错误语句是________. (2分)A.MOV VAR , AB.MOV AX , VARC.MOV A , VARD.MOV VAR , AX标准答案:C5. 在使⽤除法指令作字除法时,余数应放在寄存器________中。
(2分)A.BXB.DXC.CXD.AX标准答案:BCMP AX,BX_______ L (2分)A.JAB.JBC.JGD.JL标准答案:C7. 已知(AX)=1111H (BX)=2222H (CX)=3333H,执⾏“PUSH BX”两次,“PUSH CX”⼀次,“POP AX”两次后, (AX)等于_________。
(2分)A.1111HB.2222HC.3333HD.0标准答案:B8. 若(AX)=3412H,则(AL)的值为_________。
(2分)A.12HB.34HC.1234HD.3412H标准答案:A 9. 在语句INC BYTE PTR [BX]中,操作数使⽤的寻址⽅式是_________。
(2分)A.寄存器寻址B.寄存器间接寻址C.直接寻址D.⽴即寻址标准答案:B10. 在语句INC [BX]中,操作数使⽤的段寄存器是_________。
浙江2002年1月《汇编语言程序设计》试题

浙江省2002年1月高等教育自学考试汇编语言程序设计试题课程代码:02321一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题1分,共10分)1.CPU发出的访问存储器的地址是( )A.物理地址B.偏移地址C.逻辑地址D.段地址2.将高级语言的程序翻译成机器码程序的实用程序是( )A.编译程序B.汇编程序C.解释程序D.目标程序3.DEC BYTE PTR[BX]指令中的操作数的数据类型是( )A.字B.双字C.字节D.四字4.在下列语句中,BUFFER称为( )BUFFER DB 01H,0AHA.符号B.变量C.助记符D.标号5.串操作指令中,源串操作数的段地址一定在( )寄存器中。
A. CSB. SSC. DSD. ES6.使计算机执行某种操作的命令是( )A.伪指令B.指令C.标号D.助记符7.将数据5618H存放在存储单元中的伪指令是( )A. DATA1 DW 1856HB. DATA1 DB 18H,56HC. DATA1 EQU 5618HD. DATA1 DB 18H,00H,56H,00H8.若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=( )A. 1400HB. 77F8HC. 0000HD. 0FFFFH9.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。
目前,微机中普遍采用的是( )码。
A. BCD码B.二进制码C.ASCII码D.十六进制码10.用指令的助记符、符号地址、标号和伪指令、宏指令以及规定的格式书写程序的语言称为( )A.汇编语言B.高级语言C.机器语言D.低级语言二、填空题(每空1分,共20分)1.在8086/8088汇编语言中,有五条串操作指令,其中搜索字符串指令的助记符是______。
2.通常所说的计算机系统包括________和________两大部分。
汇编语言程序设计试题和答案

《汇编语言程序设计》试题专业姓名成绩一、单项选择题(每1分,共15分).1将下列二进制数0111,1111,1111 转换为16进制数和10进制数是()A.07FFH 3021DB. 6FEH 1021DC. 07FFH 2012DD. 07FFH 2047D2. 在1BM Pc机的IN和OUT 指令中,I/o端口号通常是由Dx寄存器来提供的,但有时也可以在指令中用一个字节来表示端口号。
试问可以直接由指令指定的I/o端口号有多少个?( )A. 127DB.255DC. 256DD.128D3. 设MYDAT是一个字变量,下列指令中,错误的是()A.MOV BX,10100BB.MOV DS,AXC.ADD BX,[10100H]D.MOV BX,MYDAT[SI]4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执行后,AX寄存器内是()A.5678HB.4C2AHC.2A4CHD.7856H5.一台微型计算机的字长为16位,如果采用字节编址,那么它可以访问的最大存储空间是多少字节( ),试用16进制数表示该机的地址范围()A.1M 0~FFFFFHB.64K 0~FFFFHC.128K 0~FFFFHD.128K –FFH~FFH6. 如果在一个程序段开始执行之前,(cs)=0A7F0H,(1P)=2B40H,试问该程序段的第一个字的物理地址是()A.BAA40HB.AAB40HC.AAA40HD.0D603H7.下列指令哪个是错误的(设OP1,OP2 是已经用DB定义的变量名)( )A.CMP BL,OP1B.MOV [BX],111001BC. INC OP2D.SAR AX,CL8.假定(DX)=10111001B,(CL)=05,(CF)=1试确定:RCL DL,CL 指令执行后,DX中的值是()A.00CEHB.009DHC.00B9HD.003BH9. 有符号定义语句如下:BUFF DB 1,2,3,‘123’EBUFF DB 0L EQU EBUFF - BUFF问L的值为多少( )A.6DB.7DC.3DD.5D.10. IBMPC机中下列那些寄存器可以用来存储存储器地址()A、BX,BP,SP,CXB、AX,SI,DI,DXC、BX,SI,DI,SPD、DX,SI,DI,SP11.下列指令中正确的是()A.MOV [BX],[SI]B.MOV AX,[SI][DI]C.MOV BX,OFFSET NAME[SI]D.MOV BYTE PTR [100],10012下列程序段执行后,寄存器BX中的内容是什么()MOV CL , 3MOV BX , 0B7HROL BX , 1RCR BX , CLA、0EDHB、0DEHC、0CDHD、0CCH13JB指令的测试条件是( )A. CF=0B. CF=1 C .OF∨CF=1 D.OF=114在DEBUG中()命令用来汇编一句汇编语言语句15 A 、A B、U C 、E D、D16. 指令STI 的功能是( )17(A)允许中断(B)不允许中断(C)允许单步(D) 不允许单步二.不定项选择题,漏错多选不得分。
(全新整理)1月全国自考高级语言程序设计(一)试题及答案解析

全国2018年1月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.以下正确的C语言自定义标识符是()A._la B.2a_C.do D.a.122.在C语言中,错误..的常数表示是()A.0L B.-0x6aLC.′6′D.1.234E3.53.设int a,x=2;执行语句a=x>0?3*x(x=10);后,变量x的值是()A.1 B.2C.6 D.104.设有以下程序段:int x=2,y=2,z=0,a;a=++x||++y&&z++;printf(″%d,%d,%d\n″,x,y,z);执行后输出的结果是()A.2,2,0 B.3,3,1C.3,2,0 D.3,2,15.在C语言中,字符串″\\TOP\t\65\″″的长度是()A.5 B.7C.9 D.126.设float x;,由键盘输入:12.45,能正确读入数据的输入语句是()A.scanf(″%5f″,&x); B.scanf(″%5d″,&x);C.scanf(″%f″,x); D.scanf(″%s″,&x)7.逗号表达式a=2*6,a*3,a+5的值是()A.12 B.17C.36 D.4112 8.C 语言表达式3.26*exp(x)+(a+b)/3所表示的数学表达式是( )A .3.26x+)b a (31+B .3.26x e +3ba +C .3.26e x +)b a (31+ D .3.26lnx+3ba +9.在C 语言中,下列运算符中结合性属于自右向左的是( )A .&&B .--C .<<D .->10.设int (*p )[4];,则p 的含义是( )A .指向整型变量的指针数组B .指向4个整型变量的函数指针C .4个指向整型变量的指针变量D .指向具有4个整型元素的一维数组的指针11.设char x[][10]={″Windows ″,″dos ″,″unix ″};,执行pintf(″%c ″,x[1][2]);后输出的结果是() A .n B .iC .oD .s12.设int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int(* ptr)[3]=a,*p=a[0];,则与数组元素a[1][2]等价的是()A .*((p+2)+3)B .*(*(p+3))C .(*ptr+1)+2D .*((ptr+1)[2])13.设int a=11,b=2;,执行下述程序段后,变量a 和b 的值分别是( )do{a/=b++;}while(a>b);A .1,3B .1,4C .2,3D .2,414.在C 语言中,下列错误..的说法是( )A .函数可以递归调用B .不允许在函数中再定义函数C .递归程序不可能用非递归算法实现D .对于continue 语句,可以通过改变程序的结构而不使用它15.设int a[2][3]={{1},{2,3}};,则元素a[1][0]的值是( )A .0B .1C .2D .316.若main()带参数,正确的是()A.main(int argc,char*argv) B.main(int argc,char*argv[])C.main(int argc,char argv[][]) D.main(int argc,char argv[])17.设struct student{ char name[10];int sex;int num;}s,*p=&s;以下对结构型变量s中成员num的非法引用是()A.p->num B.(*p).numC.s.num D.student.num18.下列说法中正确的是()A.C语言的预处理命令只有宏定义和文件包含B.预处理命令只能出现在主函数之前C.所有预处理命令都是以符号″#″开头D.有些预处理命令不是在源程序编译之前处理19.设enum week {mon,tue=2,wed,thu,sat=6}day;,则枚举常量mon和thu的值分别是()A.0和4 B.1和4C.0和3 D.1和520.下列属于文件包含的命令是()A.#define N 25 B.#endifC.#include ″stdio.h″D.#else二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
汇编语言程序设计试题参考答案

汇编语言程序设计参考答案A卷一、单项选择题(本大题共8小题,每小题2分,共16分)1.C2.B3.B4.A5.C6.A7.A8.C9.D 10.B二、名词解释(本大题共5小题,每小题4分,共20分)11.微处理器:也成中央处理器(CPU),是微型计算机的核心部件,包含运算器、控制器、寄存器组及总线接口等,负责对计算机系统各部件进行统一的协调和控制。
12.寻址方式:就是寻找操作数或操作数地址的方式,根据寻址方式可方便地访问各类操作数。
13.伪指令:是发送给汇编程序的命令,在汇编过程中由汇编程序进行处理,如定义数据、分配存储区、定义段及定义过程等。
14.中断源:指能引起中断的外部设备或内部原因。
15.汇编语言:是一种面向CPU指令系统的程序设计语言,采用指令助记符来表示操作码和操作数,用符号地址表示操作数地址。
三、简答题(本大题共4小题,每小题5分,共20分)16.微型计算机系统软件的主要特点是什么?计算机系统软件的主要特点是简化计算机操作,支持应用软件的运行并提供相关服务,通常包括操作系统、语言处理程序等。
17.什么是逻辑地址?他由哪两部分组成?计算机存储器中给每个逻辑段编址的地址称逻辑地址。
逻辑地址是在程序中使用的地址,他由段地址和偏移地址两部分构成。
18.一个完整的汇编源程序由那些逻辑段组成?各逻辑段的主要作用是什么?一般情况下汇编语言源程序应该由以下3个逻辑段组成:①数据段:用来在内存中建立一个适当容量的工作区,以存放常数,变量等程序需要对其进行操作的数据;②堆栈段:用来在内存中建立一个适当容量的堆栈区,以便在中断、子程序调用时使用;③代码段:包括了许多以符号表示的指令,其内容就是程序需要执行的具体操作。
19. DMA数据传送方式的特点是什么?DMA数据传送方式把外设与内存交换信息的操作与控制交给DMA控制器,简化了CPU对数据交换的控制,数据传送速度快,但这种方式电路结构复杂,硬件开销大。
全国2008年1月高等教育自学考试高级语言程序设计(一)考试试题

全国2008年1月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列转义字符中,错误..的是()A.′\n′B.′\\′C.′\108′D.′\xbb′2.在C语言中,整型常量的书写形式不.包括()A.二进制B.八进制C.十进制D.十六进制3.在C语言程序中,主函数的摆放位置()A.必须置于所有函数之首B.必须置于所有函数之尾C.不得置于所有函数之尾D.任意4.自定义标识符正确的是()A.5d_mB.constC.x4yD.book-15.表达式2&3|4和2>>1的值分别是()A.-5和0B.-5和1C.6和0D.6和16.执行下列程序段后x的值为()int i=1, j=10, x;for (; i<=j; i++, --j) x=i;A.5B.6C.7D.87.switch(表达式)语句中的“表达式”,允许的类型是()A. float, intB. float, int, charC. int, charD. char, double8.字符数组初始化错误..的是()A. static char word [ ]=″Turbo″;B. static char word [ ]={″Turbo″};C. static char word [ ]={′T′,′u′,′r′,′b′,′o′,′\0′};D. static char word [ ]=′Turbo\0′;9.设int b[5]={1,2,3,4,5};char a,c, d;,则数组元素值为4的是()A.b[′d-c′]B.b[4]C.b[′d′-a]D.b[′d′-′a′]10.设int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则不.能表示数组a中元素的是()A.*pB.a[10]C.*aD.a[p-a]11.设double *p[6];,则p是()A.指向double型的指针B.double型数组C.指针数组D.数组指针12.设int x;,则与计算|x|等价的表达式是()A.x>0?-x:xB.x>0?x:-xC.x<0?x:-xD.x<0?-x:-x13.设char s[20]=″2008″;,则执行strcat(s, ″Beijing″); printf(″% d\n″, strlen(s));后输出结果是()A.5B.11C.12D.2014.对函数而言,下列说法正确的是()A.一个程序中可以出现一个以上的主函数B.函数与主函数可以互相调用C.用户自定义的函数必须有形式参数D.调用函数和被调用函数可以不在同一个文件中15.设FILE *fp; char ch; , 则从fp所指向文件中读入一个字符,正确的语句是()A.fgetc(ch, fp);B.ch=fgetc(fp);C.getchar(ch);D.fgetc(fp,ch);二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
1月全国自考汇编语言程序设计试题及答案解析

1全国 2018年 1月高等教育自学考试汇编语言程序设计试题课程代码: 02321一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填 在题干的括号内。
每小题 1分,共 16 分) 1. 已知某操作数的物理地址是 2117AH ,则它的段地址和偏移地址可能是 ( )。
A.2025 :0F2A B.2108 : OOEA C.2000 : 017AD.2100 : 117A2•某程序装入内存后,DS=1200H , CS=1400H ,则程序中数据段中的数据最多是( )字节。
A.2KB.4KC.8KD.16K3•以寄存器DI 间接寻址的存储器字节单元内容加1的指令是(A.INC :DI :C 」NC BYTE PTR : DI : 4•有语句:COUNT EQU A.COUNT 是变量C.COUNT 是符号常数B.INC DI D.ADD : D 门,1256,下列四种叙述中,正确的是 (B.COUNT 占用一个字节存储单元 D.COUNT 占用二个字节存储单元5•下面指令中,源操作数的寻址方式为立即寻址的是A.MOV AX , OFFSET AC.MOV AX , A+1 6•已知 SP=2110H,执行 POP A.2111H(B.MOV AX ,A D.MOV AX ,AAX 后, SP 寄存器的值是 B.2112H)。
[BX ] ( )。
)。
)。
C.210FH7•将AX 中有符号数除以 A.SHR AX ,1 C.ROR AX ,1D.210EH2 的正确指令是 (B.SAR AX , D.RCR AX ,)。
18•比较BX 和SI 中的两个存储器地址,若 A.JAE HIGH B.JBE HIGHBX > SI 转向HIGH 的正确指令是()。
2A.AND AL ,1B.CMP AL ,DLC.XOR AL ,ALD.SUB AL ,DL12.执行 1号 DOS 系统功能调用,从键盘输入的字符值存放在 ( )寄存器中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
做试题,没答案?上自考365,网校名师为你详细解答!
全国2005年1月高等教育自学考试
汇编语言程序设计试题
课程代码:02321
一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填
在题干的括号内。
每小题1分,共16分)
1.已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是( )。
A.2025∶0F2A
B.2108∶00EA
C.2000∶017A
D.2100∶117A
2.某程序装入内存后,DS=1200H,CS=1400H,则程序中数据段中的数据最多是( )字节。
A.2K
B.4K
C.8K
D.16K
3.以寄存器DI间接寻址的存储器字节单元内容加1的指令是( )。
A.INC [DI]
B.INC DI
C.INC BYTE PTR[DI]
D.ADD [DI],1
4.有语句:COUNT EQU 256,下列四种叙述中,正确的是( )。
A.COUNT是变量
B.COUNT占用一个字节存储单元
C.COUNT是符号常数
D.COUNT占用二个字节存储单元
5.下面指令中,源操作数的寻址方式为立即寻址的是( )。
A.MOV AX,OFFSET A
B.MOV AX,A
C.MOV AX,A+1
D.MOV AX,A[BX]
6.已知SP=2110H,执行POP AX后,SP寄存器的值是( )。
A.2111H
B.2112H
C.210FH
D.210EH
7.将AX中有符号数除以2的正确指令是( )。
A.SHR AX,1
B.SAR AX,1
C.ROR AX,1
D.RCR AX,1
8.比较BX和SI中的两个存储器地址,若BX≥SI转向HIGH的正确指令是( )。
A.JAE HIGH
B.JBE HIGH
C.JEG HIGH
D.JLE HIGH
9.指令SCASB操作数的段地址一定在( )寄存器中。
A.CS
B.DS
C.ES
D.SS
10.有数据定义语句BUF DW 0ABH,1,10 DUP(3 DUP(1,0),2)汇编后,为变量BUF分配
的存储单元字节数是( )。
A.48H
B.90H
C.120
D.60
11.下列指令执行后,不改变AL寄存器内容的指令是( )。
1
A.AND AL,1
B.CMP AL,DL
C.XOR AL,AL
D.SUB AL,DL
12.执行1号DOS系统功能调用,从键盘输入的字符值存放在( )寄存器中。
A.AL
B.BL
C.CL
D.DL
13.执行下面指令语句,则AX=( )。
MOV AL,95H
CBW
A.0095H
B.0F95H
C.0FF95H
D.9095H
14.将DX,AX中32位数左移一位的指令序列是( )。
A.SHL AX,1
B. RCL AX,1
RCL DX,1 SHL DX,1
C.SHL AX,1
D.RCL AX,1
SHL DX,1 RCL DX,1
15.将CX寄存器低4位清零的正确指令是( )。
A.AND CX,0F0H
B.AND CX,0FFF0H
C.AND CX,1110H
D.MOV CX,0
16.判断AX和BX是否同时为偶数或同时为奇数。
若是转YES的正确指令序列是( )。
A.OR AX,BX
B.XOR AX,BX
AND AX,1 AND AX,1
JE YES JE YES
C.CMP AX,BX
D.SUB AX,BX
AND AX,1 AND AX,1
JE YES JE YES
二、填空题(每空1分,共16分)
1.在8086/8088系统中,存储器物理地址是分段组织的。
堆栈段的段地址存放在_____寄存器中,栈顶数据的偏移地址放在_____寄存器中。
代码段的段地址存放在_____寄存器中。
偏移地址在_____寄存器中。
2.已知DS=29A0H,某数据的物理地址是2A400H,则当DS=6700H时,该数据的物理地址是_____。
3.逻辑运算指令都是按_____操作的,其中_____指令执行后不影响任何标志位,其他指令执行后,标志位_____和_____一定是0。
4.有指令MOV CL,N,要使该指令合法,则N的最大值是_____,最小值是_____。
(用十进制数表示)
5.已知DS=4000H,BX=0100H,SI=0004,(40100H)=28H,(40101H)=69H,(40104H)=10H, (40105H)=9AH,先执行MOV AX,[0100H],AX=_____再执行ADD AX,[BX+SI],AX=_____,CF=_____。
6.有下列数据定义:
AA DW 1,2,3,4,5,6,7
COUNT EQU ($-AA)/2
则COUNT=_____,表示_____。
2
三、简答题(每小题4分,共12分)
1.简述DOS系统功能调用方法,写出在屏幕上显示数字9的指令语句。
2.定义数据段DATA_SEG,数据段中的数据按下列要求依次存储:
(1)第一个字节是整数5
(2)变量BUF,大小为25个字节,初值为0
(3)变量ARRAY,类型为字,初值为12H,56H,78H,0AH
(4)变量MSG存储字符串’yes’
3.假设DS=2000H,BX=0100H,(20100H)=30H,(20101H)=10H
问:(1)执行MOV DX,[BX]DX=_____
执行LEA DX,[BX]DX=_____
(2)简述两条指令区别
四、程序分析题(每小题6分,共24分)
1.设寄存器AX,BX,CX中的内容都是1234H,变量value中的内容为0F0FH,执行下列指令序列:
OR AX,value
AND BX,value
XOR CX,value
则AX=_____,BX=_____,CX=_____
2.MOV AL,5
ADD AL,AL
MOV BL,AL
ADD AL,AL
ADD AL,BL
上述程序段执行后,AL=_____,BL=_____
程序段的功能用数学表达式表示_____
3.NUM DB?
MOV AH,1
INT 21H
CMP AL,39H
JBE NEXT
SUB AL,7
NEXT:SUB AL,30H
MOV NUM,AL
上述程序段运行后,若输入’F’,则(NUM)=_____(用二进制表示)
若’8’,则(NUM)=_____(用二进制表示)
该程序段的功能是_____。
4.有下列数据定义
V A DB 0FFH
VB DB 1,2
VC DW 3456H
执行下列指令序列:
MOV AX,WORD PTR VB+1
3
MOV BL,BYTE PTR VC+1
MOV CL,VB-1
则AX=_____,BL=_____,CL=_____
五、程序填空(每小题6分,共12分,每空格只能填一条指令)
1.下面是一个用地址表法实现多分支的程序段。
根据键盘输入0~4的不同值,实现程序分支。
请将程序段填写完整。
BRANCH_TAB DW R0,R1,R2,R3,R4
·
·
·
MOV BX,OFFSET BRANCH_TAB
MOV AH,1
INT 21H
_____
MOV AH,0
ADD AX,AX
ADD BX,AX
_____;转到相应分支
2.设DX,AX中存放双字有符号数P,DX存放高位字。
BX,CX中存放双字有符号数Q,BX存放高位字。
下列程序完成P与Q比较大小操作。
当P≥Q时,使AX=1
P<Q时,使AX=2
将程序填写完整:
CMP DX,BX
JL L2
_____
CMP AX,CX
_____
L1:MOV AX,1
JMP EXIT
L2:MOV AX,2
EXIT:
六、程序设计题(第1小题6分,第2小题14分,共20分)
1.按下列要求编写一个子程序:
子程序名:ABSOLT
功能:求两数和的绝对值
输入参数:AX存放一个加数
BX存放另一个加数
输出参数:AX存放和的绝对值
2.已知在以ARRAY为首地址的数据区中存放10个带符号字数据:
ARRAY DW,1,2,-1,3,4,-2,-3,4,5,-6
编程将ARRAY分成两个数组:正数数组P_ARY和负数数组N_ARY,并分别显示正数项
4
个数和负数项个数。
要求:源程序格式完整。
5。