把下列十进制数转换成二进制数
关于雨的句子-
习题
1
1.1
把下列十进制数转换成二进制数、八进制数、十六进制数。
①
16.25
②
35.75
③
123.875
④
97/128
1.2
把下列二进制数转换成十进制数。
①
10101.01
②
11001.0011
③
111.01
④
1010.1
1.3
把下列八进制数转换成十进制数和二进制数。
①
756.07
②
63.73
③
35.6
④
323.45
1.4
把下列十六进制数转换成十进制数。
①
A7.8
②
③
B7C.8D
④
1EC
1.5
求下列带符号十进制数的
8
位补码。<
/p>
①
+127
②
-
1
③
-
0
④
-128
1.6
求下列带符号十进制数的
16
位补码。
①
+355
②
-
1
1.7
计算机分那几类?各有什么特点?
1.8
简述微处理器、微计算机及微计算机系统三个术语的内涵。
1.9
80X86
微处理器有几代?各代的名称是什么?
1.10
你知道现在的微型机可以配备哪些外部设备?
1.11
微型机的运算速度与
CPU
的工作频率有关吗?
1.12
字长与计算机的什么性能有关?
习题
2
2.1
、
E
U
与
BIU
各自的功能是什么?如何协
同工作?
2.2
、
< br>8086/8088
微处理器内部有那些寄存器,它们的主要作用是什么?
2.3
、
8086
对存储器的管理为什么采用分段的办法?
2.4
、在
8086
中,逻辑地址
、偏移地址、物理地址分别指的是什么?具体说明。
2.5<
/p>
、给定一个存放数据的内存单元的偏移地址是
20C0H
,
(
DS
)
=0C00EH
,求出该内存单
元的物理地址。<
/p>
2.6
、
80
86/8088
为什么采用地址
/
数据
引线复用技术?
2.7
、
8086
与
8088
的主
要区别是什么?
2.8
、怎样确定<
/p>
8086
的最大或最小工作模式?最大、最小模式产生控制信号的
方法有何不同
2.9
、
8086
被复位以后,有关寄存器的状态是什么?微处理器从何处开始执行程
序?
2.10
、
8086
基本总线周期是如何组成的?各状态中完成什么基本操作?
2.11
、
在基于
8086
的微计算机系统中,
存储器是如何组织
的?是如何与处理器总线连接的?
BHE#
信号起什么作用?
2.12
、
80X86
系列微处理器采取与先前的微处理器兼容的技术路线,有什么好处?有什么不
足?
2.13
、
803
86
内部结构由哪几部分组成?简述各部分的作用。
2.14
、
80386
有几种存储器管理模式?都是什么?
2.15
、在不同的存储器管理模式下,
80386
的段寄存器
的作用是什么?
2.16
、描述符的
分类及各描述符的作用。
2.17
、
80386
的分段部件是如何将逻辑地址变为线性地址的?
p>
2.18
、
80
3866
中如何把线性地址变为物理地址?
习题
3
3.1
、
8086/8088
微处理器有哪些寻址方式?并写出各种寻址方式的传送指令
2
条(源操作
数和目的操作数寻址)
。
3.2
、
有关寄存器和内存单元的内容如下:
DS=2000H
,
SS=1000H
,
BX=0BBH
,
BP=02H
p>
,
SI=0100H
,
DI=0200H
,
(
200BB
H
)
=1AH
,
(
201BBH
)
=34H
,
(
200CCH<
/p>
)
=68H
,
(
200CDH
)
=3FH
,
(
10202H
)
=78H
,
(
102
03H
)
=67H
,
< br>(
21200H
)
=2AH
p>
,
(
21201H
)
=4CH
,
(
21202H
)
=0B7H,
(
p>
201CCH
)
=56H,
(
201CDH
)
=5BH
,
(
201BCH
)
< br>=89H,
(
200BCH
)<
/p>
=23H,
试写出下表中源操作数的寻址方式和寄存器
AX
的内容。
表
3-7
习题
1
指令
MOV
AX
,
1200H
MOV
AX
,
BX
MOV
AX
,
[1200H]
MOV
AX
,
[BX]
MOV
AX
,
[BX+11H]
MOV
AX
,
[BX+SI]
MOV
AX
,
[BX+SI+11H]
MOV
AX
,
[BP+DI]
3.3
、指出下列语句的错误。
(
1
)
MOV
[SI]
,
34H
(
2
)
MOV
45H
,
AX
(
3
)
INC
12
(
4
)
MOV
[BX]
,
[SI+BP+BUF]
(
5
)
MOV
BL
,
AX
(
6
)
MOV
CS
,
AX
(
7
)
OUT
240H
,
AL
(
8
)
MOV
SS
,
2000H
(
9
)
LEA
BX
,
AX
(
10
)
XCHG
AL
,
78H
3.4
、已知
DS=2000H
,<
/p>
(
21000H
)
=2234H
,
(
21002H
p>
)
=5566H
,试区别以下
3
条指令。
MOV
SI
,
[1000H]
LEA
SI
,
[1000H]
源操作数寻址方式
AX
的内容
LDS
SI
,
[1000H]
3.5
、简述堆栈的性质。如果
SS=9B9FH<
/p>
,
SP=200H
,连续执行两条
PUSH
指令后,栈顶的
物理地址是多少?<
/p>
SS
,
SP
的值
是多少
?
再执行一条
POP
指令后,
栈顶的物理地址又是多少?
SS
、
SP
的值又是多少?
3.6
、
写
出将
AX
和
BX
寄存器内容进行交换的堆栈操作指令序列,并画出堆栈变化过程示
意图。
3.7
、用两条指令把
F
LAGS
中的
SF
位置
1
。
3.8
、用一条指令完成下列各题。
p>
(
1
)
AL
内容加上
12H
,结果送入
< br>AL
。
(
p>
2
)用
BX
寄存器
间接寻址方式把存储器中的一个内存单元加上
AX
的内容,并加
上
CF
位,结果送入该内存单元。
p>
(
3
)
AX
的内容减去
BX
的内容,结果送入
AX
。
(
p>
4
)将用
BX
、<
/p>
SI
构成的基址变址寻址方式所得到的内容送入
< br>AX
。
(
p>
5
)将变量
BUF1
中前两个字节的内容送入寄存器
SI
中。
3.9
、下面的程序段执行后,
DX
、
AX
的内容是什么
?
MOV
DX
,
0EFADH
MOV
AX
,
1234H
MOV
CL
,
4
SHL
DX
,
CL
MOV
BL
,
AH
SHL
AX
,
CL
SHR
BL
,
CL
OR
DL
,
BL
3.10
、写出下面的指令序列中各条指令执行后的
AX
内容。
MOV
AX
,
7865H
MOV
CL
,
8
SAR
AX
,
CL
DEC
AX
MOV
CX
,
8
MUL
CX
NOT
AL
AND
AL
,
10H
3.11
、
如果要将
AL
中的高
4
位移至低
4
位,有几种方法
?
请分别写出实现这些方法的程序
段。
3.12
、利用串操作指令,将
ARE
A1
起始的区域
1
中的
200
个字节数据传送到以
AREA2
为
起始地址的区域
2
(两个区
域有重叠)
。
3.13
、
寄存器
BX
中有
4
位
0~F
的十六进制
数,
编写程序段,
将其转换为对应字符
(即
ASCII
码)
,按从高到低的顺
序分别存入
L1
、
L2
、
L3
、
L4
这
4
个字节单元中。
3.14
、
试将
BUF
起始的
100
个字节的组合
BCD
码数字,
转换成
ASCII
码,
并存放在以<
/p>
ASC
为起始地址的单元中。已知高位
B
CD
码位于较高地址中。
3.15
、
请给出以下各指令序列执行完后目的寄存器的内容。
(
1
)
MOV
BX
,
-78
MOVSX
EBX
,
BX
(
2
)
MOV
CL
,
-5
MOVSX
EDX
,
CL
(
3
)
MOV
AH
,
9
MOVZX
ECX
,
AH
(
4
)
MOV
AX
,
87H
MOVZX
EBX
,
AX
3.16
、
请给出以下各指令序列执行完后
EAX
和
EBX
的内容。
MOV
ECX
,
12345678H
BSF
EAX
,
ECX
BSR
EBX
,
ECX
3.17
、
给以
TAB
为首地址的
100
个
ASCII
码字符添加奇偶校验位
(
bit7
)
,
使每个字节中的
“
1
”
的个数为偶数,在顺序输出到
10H
号端口。
< br>
3.18
、
编写一段程序,
要求在长度为
100H
字节的数组中,
找出正数的个数并存入字节单元
POS
IT
中,找出负数的个数并存入字节单元
NEGAT
中。
习题
4
4.1
、
汇
编语言有何特点?编写汇编语言源程序时,一般的组成原则是什么?
4.2
、
.
MODEL
伪指令是简化段定义源程序格式中必不可少的语句,
它设计了哪几种存储模
式,各用于创建什么性质的程序?
4.3
、
如
何规定一个程序执行的开始位置,主程序执行结束应该如何返回
DOS
< br>,源程序在何
处停止汇编过程
?
4.4
、
逻
辑段具有哪些属性?完整代码段定义时的默认属性是什么?小型模式下的简化代码
段定义
具有的默认属性是什么
?
4.5
、
DOS
支持哪两种可执行程序结构,编写这两种程序时需要注意什么
?
4.6
、
给出下列语句中,指令立即数(数值表达式)的值:
(
1
)
mov
al
,
23h
AND
45h
OR
67h
(
2
)
mov ax
,
1234h
/
16+10h
(
3
)
mov
ax
,
254h SHL 4
(
4
)
mov
al
,
’a’
AND
(
NOT
(
‘b’
一
‘B’
)
)
(
5
)
mov
ax
,
(
76543 LT
32768
)
XOR 7654h
4.7
、
画图说明下列语句分配的存储空间及初始化的数据值:
(
1
)
byte_var
db
‘BCD’
,
10
,<
/p>
10h
,
’EF’
,
2 dup
(一
l
,
?
,
3 dup
(
4
)
)
(
2
)
word_var
dw
1234h
,一
5
,
6
dup
(
?
)
4.8
、
设置一个数据段,按照如下要求定义变量:
(
1
)
myl_b
为字符串变量,表示字符串“
Personal Computer
!
”
(
2
)
my2_b
为用十六进制数表示的字节变量,这个数的大小为
100
(
< br>3
)
my3_w
为
100
个未赋值的字变量
(
4
)
my4
_c
为
100
的符号常量
(
5
)
my5_c
为字符串常量,代替字符串“
Personal
Computer
!
”
4.9
、
假
设
opw
是一个字变量,
opbl
p>
和
opb2
是两个字节变量,指出下列语句
中的具体错误
原因并改正错误。
(
1
)
mov byte ptr [bx],256
(
2
)
mov bx,offset opw[si]
(
3
)
add opbl,opb2
(
4
)
mov opbl,al+l
(
5
)
sub al,opw
(
6
)
mov [di],1234h
4.10
、
编制一个程序,把字变量
X
和
Y
中数值较大者存入
MAX
字单元;若两者相等
,则把
-1
存入
MAX
中。假设变量存放的是有符号数。
4.11
、
设变量
DAT
为有符
号
16
位数,
请编写程序将它的符号状
态保存在
sign
字节单元,
即:
p>
如果变量值大于等于
0
,保存
0
;如果变量值小于
0
,保
存
-1
。
4.12
、
X
、
Y
和
Z
是
3
个有符号字节数据,编写一个比较相等关系的程序:
(
1
)如果这
3
个数都不相等,则显示
N
;
< br>(
2
)如果这
3
个数中有两个数相等,则显示
X
;
(
3
)如果这
3
个数都相等,则显示
Y<
/p>
。
4.13
、
编制程序完成
12H
,
23H
,
F3H
,
6AH
p>
,
20H
,
FEH
,
10H
,
C
8H
,
25H
和
34H
共
10
个无符
号字节数据之和,并将结果存入字变量
SUM
中。
p>
4.14
、求出主存从
< br>2000H
:
0
开始的一个
p>
64KB
物理段中共有的空格个数,存入
D
X
中。
4.15
、
过程定义的一般格式是什么?子程序开始为什么常有
PU
SH
指令,
返回前为什么有
POP
p>
指令?下面完成
16
位无符号数累加的子程
序是否正确?若有错,请改正。
jiafa
PROC
push ax
xor
ax,ax
xor dx,dx
again:
add ax, [bx]
adc
dx,0
inc bx
inc bx
loop again
ret
ENDP jiafa
4.16
、编
写一个程序,统计寄存器
AX
中二进制数位“
< br>0
”的个数,结果以二位十进制数形
式显示到屏幕上。<
/p>
4.17
、子程序的参数传递有哪些方
法?
4.18
、编写一个求
32
位数据补码的子程序,通过寄存器传递入口参数。
< br>
4.19
、所谓“校验和”是指不记进位的累加,常用
于检查信息的正确性。编写一个计算字节
校验和的子程序。
主程
序提供入口参数:
数据个数和数据缓冲区的首地址。
子程序回送
求和
结果这个出口参数。
4.20<
/p>
、编制一个子程序,把一个
16
位二进制
数用
4
位
16
进制形式在屏幕上显示出来。
4.21
、在以
BUF
为首地址的字缓冲区中有
3
个无符号数,编程将这
3
个数按升
序排列,结
果存回原缓冲区。
4.2
2
、在
DAT
字节单元中有一个有符号
数,判断其正负,若为正数,则在屏幕上显示“
+
”
号;若为负数,则显示“
-
”号;若是
0
,则显示
0
。
4.23
、编程求
1
~
400
中所有奇数的和,结果以十六
进制数形式显示到屏幕上。
4.24
、
在以
DAT
为首地址的字节缓冲区中
存有
100H
个无符号字节数据,
编程
求其最大值与
最小值之和,结果存入
RESULT
字单元。
4.25
、在内
存单元
CNT
中有一个字数据,编程将其二进制数显示到屏幕上
。
4.26
、在以
< br>STRG
为首地址的缓冲区中有一组字符串,长度为
10
0
,编程实现将其中所有的
英文小写字母转换成大写字母,其它
的不变。
4.27
、在以
DAT
为首地址的内存中有
100
个无符号数(数的长度为字)
,编程统计其中奇数
的个
数,
结果以十进制形式显示到屏幕上。
要求分别用子程序完成奇
数个数统计,
用宏完成
十进制数显示。
4.28
、编写一段程序,使汇编程序根据
SIGN
的值分别产生不同的指令。
如果
SIGN
=0,
则用字节变量
DATB
中的无符号数除以字节变量
S
CALE
;
如果
SIGN
=
1
,
则用字节变量
DATB
中的有符号数除以字节变量
SCAL
E
,结果都存放在字节变量
RESULT
中。
习题
5
5.1
、选择题