1)二进制数11101110转换为BCD码为(C)
A)0010 0011 0011 B)0010 0101 0010
C)0010 0011 1000 D)0010 0011 0010
步骤:先将二进制数转换为十进制数,再用BCD码表示:
11101110B【全1是255-17】=238D=(0010 0011 1000)BCD
2)下列80x86指令中,不合法的指令是( AEFI)
A)ADD AL,378H ;操作数类型不匹配
B)MOV BL,AL
C)MOV DS,BP
D)SHL AX, 1
E)PUSH AL ;堆栈指令不执行字节操作
F)MOV [BX],[SI] ;双操作数同为存储器寻址方式
G)ADC AX, [SI]
H)IN AX, 03H ;03H为8位端口地址
I) MOV AX,[SI][DI] ;两变址寄存器不可同时使用
二、填空题
(1) 在计算机中,有符号数是以补码形式存储的。
(2) 微处理器主要由控制器、运算器、 内部寄存器组等三个部分构成。
(3) 逻辑地址为2000H:1200H,段地址为 2000H 、有效地址为 1200H 、物理地址为 21200H 。
有效地址、偏移地址、段内偏移地址、偏移量含义相同
(4) 假设SP=2300H,SS=2000H,AX=50ABH,BX=1234H;执行指令PUSH AX后,SP=22FEH;再执行指令PUSH BX及POP AX之后,SP=22FEH、AX=1234H、BX=1234H;栈项的物理地址是222FEH。
三、问答题
(1)为什么说计算机所执行的任何操作都是执
行程序的结果?
答:由冯•诺依曼所提出的计算机结构的基本思想是存储程序,顺序执行。即计算机的工作过程也就是执行程序的过程,计算机对任何问题的处理都是对数据的处理;所以说计算机所执行的任何操作都是执行程序的结果。
1)8086/88系统中,存储器为什么要分段?
一个段最大为多少字节?最小为多少字节?
答:主要目的是便于存储器的管理,使得可以用16位寄存器来寻址20位的内存空间。一个段最大为64KB,最小为16KB。【段地址低4位为0】
3.问答题:试说明指令MOV BX,5[BX]与指令LEA BX,5[BX]的区别。
答:两者源操作数均为基址寻址方式。前者是数据传送类指令,表示将数据段以BX+5为偏移地址(有效地址)的16位数据传送到BX寄存器(取的是偏移地址的内容);后者是取偏移地址指令(取的是偏移地址) ,执行的结果是BX=BX+5。
(1)比较 MOV BX, OFFSET D1
和 LEA BX, D1
哪些方面相同? 哪些方面不同?
答:结果相同,执行之后BX为符号地址D1的有效地址; 所用指令不同,前者使用运算符OFFSET实现。