首 页
郑州大学
奥鹏教育
国家开放大学
西南交通大学
成人教育
联大学堂
江苏师大
青书学堂
 
   今天是: 全民学习吧,专业辅导,快速解决您的烦恼,详情请加微信:goodluckgold、QQ:3446094242
  当前位置: 郑州大学远程教育网上考试
       
 
QQ:3446094242
微信号:goodluckgold
课件学习、在线测试、网上考试,如有需要,请加微信或QQ,全程辅导,为您排忧解难!!!
 

用一条MASM语句完成其要求:定义具有100个元素的数组RAYS,并全部赋予初值350

用一条MASM语句完成其要求:将45H,0F000H,89H存放在变量XYZ的存储单元中。

用一条MASM语句完成其要求:预留100个字节单元的存储空间,用变量名BUFFER表示

用一条MASM语句完成其要求:将字符串“How are you !”存入变量fourmsg

用一条MASM语句完成其要求:将CX减1

用一条MASM语句完成其要求:取字符串变量MSG的首地址送BX

用一条MASM语句完成其要求:定义250为字节变量crazy的初值

用一条MASM语句完成其要求:字变量twoword依次存放数据3721h、10h、100、4936h

用一条MASM语句完成其要求:将变量VARS逻辑左移一位

用一条MASM语句完成其要求:以fivemulti为首地址,连续存放字节数据:2个23h,5个字符“A”,25个预留单元

用一条MASM语句完成其要求:将SI压入堆栈

用一条MASM语句完成其要求:将4567按照压缩BCD码形式存放在threebcd单元

用一条MASM语句完成其要求:将数据3721传送给BX寄存器

用一条MASM语句完成其要求:将寄存器DX内容减去4578,差值存入DX

用一条MASM语句完成其要求:将堆栈顶部内容弹出送字变量STKW

用一条MASM语句完成其要求:将数据56h、0b3h、100依次存放在字节变量bvar中

用一条MASM语句完成其要求:调用子程序sum

用一条MASM语句完成其要求:将立即数4567传送给DX寄存器。

用一条MASM语句完成其要求:字变量wvar依次存放数据3721h、100、49h、0

用一条MASM语句完成其要求:为字节量数组array预留50个存储单元

用一条MASM语句完成其要求:交换si和di各自的内容。

用一条MASM语句完成其要求:my2b为用十进制数表示的字节变量:20

用一条MASM语句完成其要求:my1b为字符串变量:Personal Computer

用一条MASM语句完成其要求:my4b为用二进制数表示的字节变量:20

用一条MASM语句完成其要求:my3b为用十六进制数表示的字节变量:20

用一条MASM语句完成其要求:把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器。

用一条MASM语句完成其要求:用寄存器BX和SI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。

用一条MASM语句完成其要求:my5w为20个未赋值的字变量

用一条MASM语句完成其要求:my6c为100的常量

用一条MASM语句完成其要求:把数0A0H与AX寄存器的内容相加,并把结果送回AX中。

用一条MASM语句完成其要求:用BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和CX寄存器的内容相加,并把结果送回存储器中。

用一条MASM语句完成其要求:将16位变量VARW与数3412H相加,并把结果送回该存储单元中。

使用MASM汇编语言编写一个程序片段,统计以0结尾的字符串包含的字符个数(不包括结尾字符0),结果保存在AX寄存器。假设数据段已经如下定义了该字符串:string db #39;Everything is Possible.#39;,0

用汇编语言编制一个程序片段,把变量varX和varY中较大者存入varZ;若两者相等,则把其中之一存入vzrZ中。假设变量是16位有符号数。

使用MASM汇编语言编写一个程序片段,将一个字符串中的小写字母转换为大写字母保存于原处。假设数据段已经如下定义了该字符串:

  msg db #39;You can do it. #39;

在数据段已经给字节变量char预留了26个单元的空间,现要求编写程序片段,实现将大写字母A~Z依次存放进去的功能。

;数据段

char db 26 dup(?)

;代码段

编写一个程序片段:有一个100个字节元素的数组,其首地址为array,将每个元素减1(不考虑溢出)存于原处。

编写一个程序片段,判断寄存器AL中的字符是否为“0~9”之间的字符。如果是,则设置AH1,否则设置AH=0。

请使用移位和加减法指令编写一个程序片段计算:AX×21(寄存器AX内容乘以21),假设乘积不超过16位。

编写一个程序片段,在DX高4位全为0时,使AX = 0;否则使AX = -1。

编写一个计算字节校验和的子程序。所谓“校验和”是指不记进位的累加,常用于检查信息的正确性。主程序提供入口参数,DS:BX=数组的段地址:偏移地址,CX=元素个数。子程序用AL回送求和结果这个出口参数。

请按如下说明编写子程序:子程序功能:把用ASCII码表示的两位十进制数转换为压缩BCD码入口参数:DH=十位数的ASCII码,DL=个位数的ASCII码出口参数:AL=对应BCD码

编程中经常要记录某个字符出现的次数。现编程记录如下数据段定义的字符串(以0结尾)中空格出现的次数,结果保存在SPACE单元。

;数据段

string db #39;Do you have fun with Assembly ?#39;,0 ;以0结尾的字符串

space dw ?

用一条MASM语句完成其要求:将数据56h、78、0b3h、100依次存放在字节变量onebyte中

用一条MASM语句完成其要求:将CX寄存器内容与字属性的变量var内容互换

用一条MASM语句完成其要求:将AX和DX内容进行逻辑或,结果保存在AX

用一条MASM语句完成其要求:将寄存器AX最低位改变为0,其他位保持不变

数据段有如下定义的变量:

var dw 3721h

说明代码段如下指令执行后目的操作数的结果,并指出其源操作数的寻址方式

mov bx, var ; BX= (1) ,源操作数的寻址方式是 (2)

mov cx, bx ; CX= (3) ,源操作数的寻址方式是 (4)

下段程序执行后,AX=(1),DX=(2) ,CF=(3)

mov ax,8585h

push ax

pop dx

add ax,104h

下段程序执行后,BX= (1) ,CX= (2) 。

mov bx,135ah

add bx,14h

sub cx,cx

已知如下程序片段执行前AX=4567H,则执行后,AH= (1) ,AL= (2) 。

mov cl,4

shl ah,cl

and al,0fh

or al,ah

下列程序执行后,SI=______,DI=_______。

mov bx,0100h

mov si,0210h

lea di,[bx+si]

已知程序执行前AX=4567H,下列程序执行后,AX=_____,CF=_____。

mov cl,4

shl ah,cl

and al,0fh

or al,ah

假设BX=E3H,说明如下各条指令单独执行后BX的结果(用十六进制表达)。

(1) ADD BX, 6 ; BX =(1)

(2) AND BX, 0 ; BX =(2)

(3) SUB BX, 10 ; BX =(3)

下段程序执行后,DX=(1),标志位CF=(2)。

mov dx,0f3h

shr dx,1

下列程序执行后,SI= (1) ,DI= (2) 。

mov bx,0100h

mov si,0210h

lea di,[bx+si]

下列程序执行后,AL= (1) ,标志位CF= (2) 。

mov al, 30

sub al, 20

执行如下程序片断,说明每条指令的执行结果:

mov ax,80h ;AX=__________

add ax,3 ;AX=__________,CF=__________

add ax,80h ;AX=__________,OF=__________

执行如下程序片断,说明每条指令的执行结果:

mov ax,100 ;AX=__________

add ax,200 ;AX=__________,CF=__________

mov ax,100

add al,200 ;AX=__________,CF=__________

执行如下程序片断,说明每条指令的执行结果:

mov al,7fh ;AL=__________

sub al,8 ;AL=__________,CF=__________

sub al,80h ;AL=__________,OF=__________

执行如下程序片断,说明每条指令的执行结果:

mov si,10011100b ;SI=__________H

or si,7fh ;SI=__________H

xor si,0feh ;SI=__________

执行如下程序片断,说明每条指令的执行结果:

mov si,10011100b ;SI=__________H

and si,80h ;SI=__________H

or si,7fh ;SI=__________H

执行如下程序片断,说明每条指令的执行结果:

mov ax,1011b ;AX=__________B

mov cl,2

rol ax,cl ;AX=__________B,CF=__________

rcr ax,1 ;AX=__________B,CF=__________

执行如下程序片断,说明每条指令的执行结果:

mov ax,1010b ;AX=__________B

mov cl,2

shr ax,cl ;AX=__________B,CF=__________

shl ax,1 ;AX=__________B,CF=__________

如下程序片段将BX中最低位显示出来,请填空补充完整:

shr bx,1

(1)next0

mov dl, #39;0#39; ; 显示0

(2)

next0: mov dl, (3) ; 显示1

next1: mov ah,2 ; 调用2号DOS功能,实现显示

int 21h

执行如下程序片断,说明每条指令的执行结果:

xor ax,ax ;AX=__________,CF=OF=__________ ;ZF=__________,SF=__________,PF=_________

如下程序段将SI和DI中有符号数的较小值存放在WMIN变量中,填写空白补充完整:

cmp si,di

(1) next

(2)

next: mov wmin,si

说明如下程序片段实现的功能,程序执行后AX寄存器内容是多少?

mov ax,0

mov bx,12

mov cx,5

again: sub bx,2

add ax,bx

loop again

如下程序片段判断AL中的字符是否是小写字母。如果是则转换为大写字母,否则不变,请填写空白,将程序片段补充完整:

cmp al,(1)

jb done

cmp al,#39;z#39;

(2)

sub al,20h

done:

已知如下子程序中,BX指向一个数组,数组元素为8位数据,CX保存数据个数。为每条语句加上注释、说明其作用,并给出整个子程序所完成的功能。

checksum proc ;(1)

xor al,al ;(2)

again: add al,[bx] ;(3)

inc bx ;(4)

loop again ;(5)

ret ;(6)

checksum endp ;(7)

如下程序片段统计以0结尾的字符串中字符个数,请填空补充完整。

; 数据段

string db #39;Do what you can do.#39;,0

; 代码段

xor bx,bx

again: cmp string[bx],0

jz (1)

inc bx

(2)

done: …

执行下面的程序片段后,AX=(1),CX=(2)。

mov cx,3

mov ax,15

next: sub ax,cx

loop next

阅读如下程序,为没有注释的语句添加注释,指出其功能或作用,并说明这个程序运行后显示的结果。

;数据段

num db 6,7,7,8,3,0,0,0 ;欲显示的数字

tab db #39;67783000#39; ;对应互换的ASCII码

;代码段

mov cx,lengthof num ;(1)

mov si,offset num ;(2)

mov di,offset tab ;(3)

again: mov dl,[si] ;(4)

xchg dl,[di] ;(5)

mov [si],dl ;(6)

mov ah,2 ;2号功能调用

int 21h ;显示AL中的字符

add si,1 ;(7)

add di,1 ;(8)

loop again ;循环处理

下面程序片段将数组ARRAY1的每个元素加500,转存在数组ARRAY2。填空补充完整:

    ;数据段

array1 dw 1,2,3,4,5,6,7,8,9,10

array2 dw 10 dup(?)

    ;代码段

    mov cx,lengthof array1

    mov bx,0

again: mov ax,array1[bx]

    add ax,500

    mov (1)

    add bx, (2)

    loop again

阅读如下程序,为编号(1)~(6)的语句添加注释,指出其功能或作用,并说明这个程序运行后显示的结果。

;数据段

num db 6,7,7,8,3,0,0,0 ;欲显示的数字

tab db #39;67783000#39; ;对应互换的ASCII码

;代码段

mov cx,lengthof num ;(1)

mov si,0 ;(2)

again: mov dl,num[si] ;(3)

xchg dl,tab[si] ;(4)

mov num[si],dl ;(5)

mov ah,2 ;2号功能调用

int 21h ;显示AL中的字符

add si,1 ;(6)

loop again ;循环处理

乘除法运算针对无符号数和有符号数,有两种不同的指令。只有一种指令的加减法如何区别无符号数和有符号数运算?

大小写字母转换使用了什么规律?

说明如下ADD指令执行后,标志CF、ZF、SF、OF和PF的状态依次是什么? mov al,89h add al,al

数码0~9、大写字母A~Z、小写字母a~z对应的ASCII码分别是多少?ASCII码0DH和0AH分别对应什么控制字符?

执行如下程序片断后,CMP指令分别使得5个状态标志CF、ZF、SF、OF和PF为0还是为1? mov ax,20h cmp ax,80h

处理器执行指令“xor ax,ax”后,标志CF、ZF、SF、OF和PF的状态依次是什么?

利用ADD指令的源操作数,各举一个指令实例说明什么是立即数寻址、寄存器寻址和存储器直接寻址。

处理器的基本指令类型有数据传送、算术运算、逻辑运算、移位、流程控制等,以8086指令系统为例,对上述5种类型的指令各给出两个指令实例。

执行如下程序片断后,CMP指令会使得哪些条件转移指令指令Jcc的条件成立、发生转移? mov ax,20h cmp ax,80h

什么是JMP指令的近(near)转移和远(far)转移?

子程序采用堆栈传递参数,为什么要特别注意堆栈平衡问题?

参数传递的“传值”和“传址”有什么区别?

什么是奇偶校验中的奇校验和偶校验?

为什么判断无符号数大小和有符号大小的条件转移指令不同?

处理器指令代码由哪两个部分组成,各自的含义是什么?

说明“AND AX,BX”和“TEST AX,BX”指令功能上的相同和不同之处。

说明计算机系统的硬件组成及各部分作用。

8086编程时使用逻辑地址,举例说明其如何转换成物理地址?

什么是数据的立即数寻址和寄存器间接寻址?指出如下使用立即数寻址和寄存器间接寻址的指令(MAXint是一个符号常量、定义为100,var是一个变量)。(1) cmp cx, MAXint (2) mov bx, var(3) mov cx, [si] (4) shl word ptr [bx], cl(5) lea bx, var (6) test [di], byte ptr 0

说明8086中逻辑地址的组成。假设DS=2100H,BX=0200H,则指令“mov ax,[bx]”访问的存储器操作数所在的物理地址是什么?

8086编程使用逻辑地址,说明其组成形式及各部分含义。

8086支持在主存中建立堆栈段,设计有将数据传送到堆栈和从堆栈中取出数据的两种指令,分别给出一个指令实例,并说明其功能。

什么是堆栈,它的基本操作有哪两个,对应哪两种指令?

在数据段书写语句“dw 2345h,12h”,它占用多少个主存字节单元?从低地址开始依次写出每个字节单元的内容(可以用十六进制形式表达)。

说明“SUB AX,BX”和“CMP AX,BX”指令功能上的相同和不同之处。

对于多字节数据保存在以字节编址的主存中,存在着字节顺序和对齐地址边界问题。说明8086采用的小端存储方式和对齐地址边界的好处。

MASM汇编语言中,下面哪些是程序员可以使用的自定义标识符,哪些是不可使用的符号、并说明使用的原因。Again,@data,h_ascii,small

MASM汇编语言中,下面哪些是程序员可以使用的自定义标识符,哪些是不可使用的符号、并说明使用的原因。FFH,DS,next,6364b

将如下8086的逻辑地址用其物理地址表达(均为十六进制形式):(1) 40H∶17H (2) B821H∶4567H

将如下8086的逻辑地址用其物理地址表达(均为十六进制形式):(1) FFFFH∶0H (2)2000H∶4500H

完成如下转换要求:(1)如果“EFH”是十六进制数表示的无符号整数,请转换为十进制形式的真值。(2)将十进制数真值“-57”,用8位二进制补码表示。(3)给出十六进制数据“9876H-ABCDH”的运算结果,并说明是否有借位。

完成如下转换要求:(1)如果“5EH”是十六进制数表示的无符号整数,请转换为十进制形式的真值。(2)将十进制数真值“-127”,用8位二进制补码表示。(3)给出十六进制数据“C051H-1234H”的运算结果,并说明是否有借位。

完成如下转换要求:(1)如果“0H”是十六进制数表示的无符号整数,请转换为十进制形式的真值。(2)将十进制数真值“127”,用8位二进制补码表示。(3)给出十六进制数据“F034H+5AB0H”的运算结果,并说明是否有进位。

完成如下转换要求:(1)如果“FFH”是十六进制数表示的无符号整数,请转换为十进制形式的真值。(2)将十进制数真值“0”,用8位二进制补码表示。(3)给出十六进制数据“1234H+7802H”的运算结果,并说明是否有进位。

举例说明CF和OF标志的差异。

说明下列指令中源操作数的寻址方式?假设VARW是一个字变量。(1)mov dx,bx(2)mov dx,[bx](3)mov dx,[bx+1234h]

说明下列指令中源操作数的寻址方式?假设VARW是一个字变量。(1)mov dx,1234h(2)mov dx,varw(3)mov dx,[bx+di]

定义常量NUM,其值为5;数据段中定义字数组变量DATALIST,它的头5个字单元中依次存放-10,2,5和4,最后1个单元初值不定。

判断下列程序片段跳转的条件

cmp cx,64h

jb there

判断下列程序片段跳转的条件

test al,10000001b

jnz here

判断下列程序片段跳转的条件

xor ax,1e1eh

je equal

什么是汇编语言?汇编语言程序和汇编程序有什么区别?

说明高级语言和汇编语言(机器语言)的区别。

什么是8086中的逻辑地址和物理地址?

8086处理器有哪三类基本段,各是什么用途?

给出汇编语言执行性语句和说明性语句的一般格式。

汇编语句有哪两种,每个语句由哪4个部分组成?

汇编语言程序的开发有哪4个步骤,分别利用什么程序完成、产生什么输出文件。

标志寄存器主要保存哪方面的信息?执行了一条加法指令后,发现ZF=1,说明结果是什么?

8086标志寄存器中有一个状态标志用符号ZF表示,说明其含义。执行加减指令后,什么情况下这个标志为0,什么情况下这个标志为1?

8086处理器有一个CF标志,它是如何定义的?并给出3条影响该标志的指令。

使用MASM汇编程序,在数据段有一个语句“db 37h,21,’no’”,它将使处理器为其分配多少个字节的主存空间?从低地址开始每个地址单元的内容依次是什么?

使用MASM汇编程序,在数据段有一个语句“xyz db 56h,23,’ab’”,它将使变量xyz占用多少个字节的主存空间?从低地址开始每个地址单元的内容依次是什么?

举例说明什么是8086处理器数据存储的小端方式(Little Endian)?

在MASM中,字符“'F'”和数值46H作为MOV指令的源操作数有区别吗?为什么?

使用二进制8位表达无符号整数,257有对应的编码吗?数值500,能够作为字节变量的初值吗?为什么?

为什么说“XCHG DX,CL”是一条错误的指令?

为什么可以把指令“MOV AX, (34+67H)*3”中的数值表达式看成是常量?

INC,DEC,NEG和NOT都是单操作数指令,这个操作数应该是源操作数还是目的操作数?

都是获取偏移地址,为什么指令“LEA BX, [SI]”正确,而指令“MOV BX, OFFSET[SI]”就错误?

在数据段已经给字节变量char预留了26个单元的空间,现要求编写程序片段,实现将大写字母A~Z依次存放进去的功能。

;数据段

char db 26 dup(?)

;代码段

用汇编语言编制一个程序片段,把变量varX和varY中较大者存入varZ;若两者相等,则把其中之一存入vzrZ中。假设变量是16位有符号数。

使用MASM汇编语言编写一个程序片段,统计以0结尾的字符串包含的字符个数(不包括结尾字符0),结果保存在AX寄存器。假设数据段已经如下定义了该字符串:

string db ˊEverything is Possible.ˊ,0

使用MASM汇编语言编写一个程序片段,将一个字符串中的小写字母转换为大写字母保存于原处。假设数据段已经如下定义了该字符串:

  msg db ˊYou can do it. ˊ

全民学习吧
加微信:goodluckgold,QQ:3446094242,轻松辅导,学习无忧