大学MOOC 汇编语言程序设计(南昌航空大学)1450787172 最新慕课完整章节测试答案
第1周汇编语言基础
专用寄存器自测
1、单选题:
IA-32处理器保存将要执行指令在主存中的存储器地址的寄存器是:
选项:
A: EFLAGS
B: EIP
C: ESP
D: CS
答案: 【 EIP】
2、单选题:
IA-32处理器保存标志的寄存器是:
选项:
A: EFLAGS
B: EIP
C: ESP
D: CS
答案: 【 EFLAGS】
3、判断题:
IA-32处理器的CS是代码段寄存器。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
IA-32处理器的DS是数据段寄存器。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
IA-32处理器的ESP与SS配合指向堆栈段当前栈顶。
选项:
A: 正确
B: 错误
答案: 【 正确】
信息显示程序自测
1、单选题:
定义要显示的字符串可以使用的伪指令是
选项:
A: call
B: mov
C: byte
D: msg
答案: 【 byte】
2、单选题:
本课程使用“exit 0”表达
选项:
A: 程序执行终止
B: 源程序汇编结束
C: 代码段结束
D: 数据段开始
答案: 【 程序执行终止】
3、判断题:
要显示字符串“I Love Assembly”,MASM可以直接使用C语言的printf函数。
选项:
A: 正确
B: 错误
答案: 【 错误】
4、判断题:
要显示字符串,可以使用本课程提供的DISPMSG子程序。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
C语言使用函数名(含参数)就是调用函数,IA-32处理器需要使用“CALL”调用指令实现调用。
选项:
A: 正确
B: 错误
答案: 【 正确】
处理器指令格式自测
1、单选题:
助记符MOV表达的指令功能是:
选项:
A: 传送
B: 加法
C: 减法
D: 空操作
答案: 【 传送】
2、单选题:
指令“mov eax, 100”的源操作数是:
选项:
A: mov
B: eax
C: 100
D: 空
答案: 【 100】
3、判断题:
指令一般由操作码和操作数组成。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
在MASM的语句语法中,指令的目的操作数一般在左边,源操作数在右边。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
IA-32处理器的指令所采用的二进制编码长度均是32位(Bit)。
选项:
A: 正确
B: 错误
答案: 【 错误】
存储器组织自测
1、单选题:
一个字节(Byte)是指二进制多少位?
选项:
A: 1
B: 4
C: 8
D: 16
答案: 【 8】
2、单选题:
IA-32处理器具有32位地址,能直接访问的主存储器容量是
选项:
A: 1MB
B: 16MB
C: 1GB
D: 4GB
答案: 【 4GB】
3、判断题:
物理地址也称逻辑地址,也是虚拟地址。
选项:
A: 正确
B: 错误
答案: 【 错误】
4、判断题:
应用程序一般主要涉及代码段、数据段和堆栈段。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
IA-32处理器的逻辑地址包括偏移地址。
选项:
A: 正确
B: 错误
答案: 【 正确】
汇编语言语句格式自测
1、单选题:
汇编语言源程序中,每个语句由四项组成,不影响语句功能的是:
选项:
A: 名字项
B: 操作码
C: 操作数
D: 注释
答案: 【 注释】
2、单选题:
语句“msg byte 13,10,0”中,关键性的助记符是:
选项:
A: msg
B: byte
C: 13
D: 0
答案: 【 byte】
3、判断题:
MASM的语句分成执行性语句和说明性语句。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
MASM汇编语言的分隔操作数使用英文逗号,不能用中文逗号。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
MASM汇编语言的注释用分号开始,无所谓英文分号还是中文分号,都可以。
选项:
A: 正确
B: 错误
答案: 【 错误】
源程序框架自测
1、单选题:
可执行代码(语句)应该在______定义的段中。
选项:
A: .stack
B: .data
C: .code
D: .data
答案: 【 .code】
2、单选题:
语句“.data”说明是什么性质的逻辑段?
选项:
A: 代码段
B: 数据段
C: 堆栈段
D: 附加段
答案: 【 数据段】
3、判断题:
“END”伪指令仅说明汇编到此结束,并不具备返回操作系统的功能。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
汇编结束也就是程序执行终止。
选项:
A: 正确
B: 错误
答案: 【 错误】
5、判断题:
为IA-32处理器编程只应该使用8086的16位指令。
选项:
A: 正确
B: 错误
答案: 【 错误】
通用寄存器自测
1、单选题:
从应用角度看,汇编语言程序员可以将计算机抽象为
选项:
A: 寄存器、存储器地址、输入输出地址
B: 寄存器、存储器地址、处理器
C: 寄存器、输入输出地址、处理器
D: 存储器地址、输入输出地址、处理器
答案: 【 寄存器、存储器地址、输入输出地址】
2、单选题:
如下哪个符号不是IA-32处理器的通用寄存器名
选项:
A: EAX
B: EDX
C: ESI
D: EDP
答案: 【 EDP】
3、判断题:
IA-32处理器中被称之为累加器通用寄存器是EAX。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
IA-32处理器中ESP是堆栈指针寄存器。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
IA-32处理器支持8个32位通用寄存器。
选项:
A: 正确
B: 错误
答案: 【 正确】
第2周数据表示
16位变量定义自测
1、单选题:
语句“word 5 dup(1,2)”分配主存的存储单元个数是:
选项:
A: 5
B: 10
C: 15
D: 20
答案: 【 20】
2、单选题:
语句“word -1”在主存分配的数据用十六进制表达是:
选项:
A: -1H
B: 1H
C: FFFFH
D: 00FFH
答案: 【 FFFFH】
3、判断题:
MASM伪指令“word”定义的字量数据是指16位数据。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
语句“word ?”表示预留一个字节存储空间。
选项:
A: 正确
B: 错误
答案: 【 错误】
5、判断题:
数值“356”可以作为WORD伪指令定义的变量初值。
选项:
A: 正确
B: 错误
答案: 【 正确】
32位变量定义自测
1、单选题:
关于MASM语句“dvar dword ?”的说法正确的是:
选项:
A: dvar变量分配的初值是1个问号(?)
B: dvar变量分配的初值是4个问号(?)
C: dvar变量无初值,占有1个主存存储单元
D: dvar变量无初值,占有4个主存存储单元
答案: 【 dvar变量无初值,占有4个主存存储单元】
2、单选题:
以32位数据分配存储空间的伪指令是:
选项:
A: byte
B: word
C: dword
D: equ
答案: 【 dword】
3、判断题:
伪指令“DWORD”定义的32位变量要占用4个字节存储空间。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
伪指令“dword”只能定义无符号整数为变量初值。
选项:
A: 正确
B: 错误
答案: 【 错误】
5、判断题:
MASM定义无初值变量使用“?”符号,但通常汇编程序填入0。
选项:
A: 正确
B: 错误
答案: 【 正确】
8位变量定义自测
1、单选题:
分配一个字节空间的伪指令是:
选项:
A: byte
B: word
C: dword
D: equ
答案: 【 byte】
2、单选题:
MASM使用“byte”定义的变量,与C语言的变量类型对应的是:
选项:
A: char
B: short
C: long
D: int
答案: 【 char】
3、单选题:
语句“byte 5 dup(1,2)”分配主存的存储单元个数是:
选项:
A: 5
B: 10
C: 15
D: 20
答案: 【 10】
4、判断题:
定义字符串也可以使用字节变量定义伪指令“BYTE”。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
数值“356”可以作为BYTE伪指令定义的变量初值。
选项:
A: 正确
B: 错误
答案: 【 错误】
变量的地址属性自测
1、单选题:
返回变量名所在段的偏移地址的操作符是:
选项:
A: offset
B: seg
C: $
D: []
答案: 【 offset】
2、单选题:
指令“org $+10H”的作用是:
选项:
A: 下一条机器码从地址10开始
B: 下一条机器码从地址10H开始
C: 下一条机器码从当前地址加上10开始
D: 下一条机器码和当前地址之间有10H个内存空间。
答案: 【 下一条机器码和当前地址之间有10H个内存空间。】
3、判断题:
变量的地址属性是指变量所在存储单元的逻辑地址,包括段基地址和偏移地址。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
bvar是一个字节变量,语句“mov al ,bvar”与“mov al ,[bvar]”功能相同。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
指令“MOV EAX, VAR+2”与“MOV EAX, VAR[2]”功能相同。
选项:
A: 正确
B: 错误
答案: 【 正确】
变量的类型属性自测
1、单选题:
将变量按照指定的类型使用的类型操作符是:
选项:
A: PTR
B: TYPE
C: LENGTHOF
D: SIZEOF
答案: 【 PTR】
2、单选题:
双字变量的类型值是:
选项:
A: 0
B: 1
C: 2
D: 4
答案: 【 4】
3、判断题:
定义变量后,变量名就具有了类型属性。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
定义为双字类型的变量,不能按字节或字类型访问。
选项:
A: 正确
B: 错误
答案: 【 错误】
5、判断题:
本课程提供的子程序DISPRD可以显示8个32位通用寄存器的内容。
选项:
A: 正确
B: 错误
答案: 【 正确】
多字节数据的存储顺序自测
1、单选题:
在IA-32处理器中,语句“dvar6 dword 38323139h”为变量dvar6所在的4个存储单元最高地址中分配的数值是:
选项:
A: 38H
B: 32H
C: 31H
D: 39H
答案: 【 38H】
2、判断题:
Intel 80x86系列处理器采用小端(Little Endian)方式存储多字节数据。
选项:
A: 正确
B: 错误
答案: 【 正确】
3、判断题:
所谓小端方式是指数据的低字节部分保存于存储器的低地址单元、高字节数据部分保存于存储器的高地址单元。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
主存储器采用字节编址,意味着每个存储单元具有一个地址、保存一个字节的数据。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
存储多字节数据采用小端方式一定比大端方式好,因为没有处理器采用大端方式。
选项:
A: 正确
B: 错误
答案: 【 错误】
数据表达程序自测
1、单选题:
指令byte 100 定义的数据是:
选项:
A: 64
B: 100B
C: 64H
D: 100H
答案: 【 64H】
2、单选题:
下面指令可以定义数据-1的指令是:
选项:
A: byte FFH
B: byte FF
C: byte 0FFH
D: byte '-1'
答案: 【 byte 0FFH】
3、判断题:
汇编语言中,表达真值“100”,可以使用二进制“01100100B”表达。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
小写字母“d”作为字符,它在主存中与十六进制数“64H”是一样的。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
汇编语言中,表达真值“13”,可以使用十六进制数“0DH”表达。
选项:
A: 正确
B: 错误
答案: 【 正确】
汇编语言的变量定义自测
1、单选题:
MASM定义变量的伪指令不包括:
选项:
A: byte
B: word
C: dword
D: equ
答案: 【 equ】
2、判断题:
MASM中定义的变量保存在通用寄存器中。
选项:
A: 正确
B: 错误
答案: 【 错误】
3、判断题:
变量定义的参数表中出现“?”符号,说明该存储空间没有赋初值。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
变量定义中的操作符“dup”用在初值表中,表示多个重复的参数。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
MASM定义变量必须有变量名,否则不能定义。
选项:
A: 正确
B: 错误
答案: 【 错误】
汇编语言的常量表达自测
1、单选题:
MASM汇编语言中,表示十六进制数的后缀字母是
选项:
A: X
B: B
C: H
D: D
答案: 【 H】
2、单选题:
MASM汇编语言中,表示二进制数的后缀字母是
选项:
A: X
B: B
C: H
D: D
答案: 【 B】
3、判断题:
MASM中,字符用单引号括起,字符串用双引号括起。
选项:
A: 正确
B: 错误
答案: 【 错误】
4、判断题:
MASM中,使用“=”或者“equ”都可以定义符号常量。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
按照MASM语法,“AH”是一个8位寄存器,“0AH”表达十六进制数。
选项:
A: 正确
B: 错
