(来自南大科院周权来题库——战无不胜的毛泽东思想)
1.一个十进制数35.625其对应的二进制数为 .101B、十六进制数为 23.AH
2.将8存放在一个字单元中,则该单元中二进制代码是 0008H
注意:这里题目已经说明是放在一个“字单元”中,不可以写成1000B
如果是将-8存入,则为FFFF8H
3.计算机软件分为两个部分即 系统软件 和 应用软件 而汇编程序属于 系统软件 , 汇编语言应用程序属于 应用软件
4.把汇编语言源程序翻译成计算机能够识别、执行的目标程序的软件称为 ==汇编程序 ==
5.8086/8088 CPU内部一般用来存放数据的寄存器有 AX、BX、CX、DX
6.8086/8088 CPU内部用来存放段地址寄存器的有 CS、DS、ES、SS
7.逻辑地址由 段地址和偏移地址 组成
8.一个语句的名字项可以是标号或变量,在程序中它们两个在书写形式上的主要区别是 标号后面加冒号,变量没有
9.在PSW中,用以记录当前运算结果特征信息的那些位称为 状态标志位 , 一般是由 CPU 自动设置。(PSW就是标志寄存器)
10.存储器单元与物理地址的关系是 一一对应 ,在一个逻辑段内,每个单元对应的段地址是 相同的 ,而偏移地址是 不同的
11.在I/O接口中,为每个可访问的寄存器分配的地址是 端口地址
12.用以指示当前堆栈栈顶的指针寄存器是 SP
13.机器指令是一组规定计算机的操作类型及相关操作数的 二进制代码
3-13题都是概念性,不做解释。可以翻阅书籍进行巩固
14 假设执行指令前BX=5678H,CL=8,指令ROL BX,CL执行后BX的内容是 7856H
遇到移位指令一定要画出指令示意图,注意区分带进位与不带进位的区别,
为了考试节约时间,可以记忆一些特殊情况:
十六位,循环移8,高位低位互换;八位,循环移8,复原
15.一条指令的基本结构一般由 操作码 和 操作数 两个部分组成。
16.8086/8088 存储器地址分段时,每个段起始地址的特征是 二进制表示的地址中低四位都为0
17.所谓“寻址方式”是指在指令中用以说明操作数所在 地址 的方法
都叫寻址方式了,那肯定是寻“址”→地址,也可以填“位置”
18.在指令中直接给出操作数的寻址方式称为 立即数寻址
19.无符号数和带符号数的两组条件转移指令,每条指令都有完全等效的两个指令助记符,例如,JL 指令另一个指令助记符是 JNGE
JL=JNGE此时(OF) (SF)=1,表示小于等于,反之JNL=JGE
记忆方法:JNGE,N表示否定,说明小于等于;JL,L代表left,说明左边小
20.8086/8088指令系统中,用以描述(说明)寄存器操作数的寻址方式是寄存器寻址方式
21.设MASK为一个变量,在“MOV AX,MASK[SI+BX]”指令中,源操作数的寻址方式是相对基址变址寻址
有关寻址方式的判断技巧:
MOV AX,判断关键
判断关键是个数,立即数寻址, 判断关键是个寄存器,寄存器寻址
判断关键是个[数],直接寻址 , 判断关键是个[寄存器],寄存器间接
TA[寄存器]又寄存器又相对 , [ta+ta]又基址又址
上面两个合在一起就是相对基址变址寻址
22.CPU执行“JMP BX”指令只改变 IP ,而不改变 CS 内容。
JMP 无条件转移指令,BX寄存器内容送IP
23 每次进行串扫描指令SCAS时,要进行递增或递减修改的变址寄存器是 DI
CF=0 增,CF=1减
24.段间间接基址BX变址SI寻址的无条件转移指令是 ==JMP DW WORD PTR [BX+SI] ==
25.使用“MUL BX”指令时,乘数放在 BX 中,被乘数放在 AX中,执行该指令后结果在 DX-AX中
26.执行带符号数字节相乘指令IMUL BL后,CF=1,OF=1意味着 乘积中高8位不是低8位的符号扩展
27.在串操作指令中,使地址自动加1或加2必须使用指令 CLD将方向标志DF置0,源串必须在 DS段中,而目的串必须在 ES 段中。
CLD 置DF=0; CLC置CF=0
28.若要测试AL中操作数的第0,1,2,7位是否为0,根据结果实现条件转移,可使用 TEST 指令。
29.8086/8088 CPU允许最大的存储空间为1MB,因此CPU的地址总线是 20 位
30.与LOOP yeqianyi指令功能等效的两条指令依次是 DEC CX 和 JNE yeqianyi
31.将AX寄存器清零的逻辑指令是 XOR AX,AX 或 AND AX,0H
32.在指令语句操作数项上,引用一个段名,就是获取段地址的 立即 数据
33.执行查表指令XLAT时,要先将表地址存放在 BX 中,将位移量存放在AL
34.十进制调整指令DAA或AAA必须放置在 ADD或ADC 指令之后,只对 AL内容进行修正。
35.假设执行前AX=7862H,指令XOR AX,AX执行后AX中的值是 0
36.指令CBW只能实现对寄存器 AL 的内容进行扩展,而它当中存放的数据应该是一个带符号 数。
37.比较两个带符号A与B的大小,若(OF) (SF)=0,则A-B >0
A与B都是带符号,那么CMP运算一定会使SF=0,由异或逻辑可得,OF=0才满足题目条件,SF=0,OF=0,综上A>B
38.变量的类型属性指的是该变量对应存储单元的 字节数
39.VAR1 DD 10H DUP(?)语句实现留空 64 个字节单元。
注意DD,占用4个字节单元;
10H=16
40.在源程序中定义一个逻辑段,使用 SEGMENT 语句表示一个段的开始,用 ENDS 语句表示一个段的结束。
注意是段定义,!!易错写成START是程序段中的
41.汇编语言源程序中的语句有三种类型,它们是宏指令语句, 指令语句 及伪指令
42.ARRAY DB 0,2 DUP(1,2),0,3汇编时生成的数据依次是 0,1,2,1,2,0,3
43.在指令语句和伪指令语句中常用符号 $ 表示地址计数器的当前值。
44.指令MOV AX,SEG BUF的执行,是把BUF的段地址 送到AX中。
记忆方法:SEG是指SEGMENT,段的意思
45.用DW 1200H 语句定义的一个字,如改用DB语句定义时,该语句是 DB 00H,12H
高高低低原则:低字节存放在地址较低的字节单元中,高字节存放在地址较高的字节单元中。
46.如果过程与调用的主程序处在同一代码段,这样的过程属性是 NEAR ,与调用它的主程序处于不同的代码段,则该过程属性是 FAR
47.在数据段或代码段中,常用伪指令 “ORG n” 来定义本段的偏移地址初值,该初值的范围是 0000H~0FFFFH
48.在存储单元yeqianyi开始,欲保留100个字长的存储单元,应使用的数据定义伪指令 是 yeqianyi DW 100 DUP(?)
49.在存取一个存储器操作数时,段地址必须由 段寄存器 提供。