汇编语言程序设计读书笔记(1)

汇编语言是汇编指令集、伪指令集和使用它们的规则的统称。
适用的领域:
l           要求执行效率高、反应快的领域,如操作系统内核、工业控制、实时系统等;
l           系统性能的瓶颈或频繁被使用的子程序或程序段;
l           与硬件资源密切相关的软件开发,如设备驱动程序等;
l           没有适当的高级语言开发环境;
不宜使用的领域:
l           大型软件的整体开发;
l           没有特殊要求的一般应用系统的开发等;
 
表1.3ASCII码的编码方案
 
000
001
010
011
100
101
110
111
0000
NUL
DEL
SP
0
@
P
 
p
0001
SOH
DC1
1
A
Q
a
q
0010
STX
DC2
2
B
R
b
r
0011
ETX
DC3
#
3
C
S
c
s
0100
EOT
DC4
$
4
D
T
d
t
0101
ENQ
NAK
%
5
E
U
e
u
0110
ACK
SYN
&
6
F
V
f
v
0111
BEL
ETB
7
G
W
g
w
1000
BS
CAN
(
8
H
X
h
x
1001
HT
EM
)
9
I
Y
i
y
1010
LF
SUB
*
:
J
Z
j
z
1011
VT
ESC
+
;
K
[
k
{
1100
FF
FS
,
<
L
/
l
|
1101
CR
GS
-
=
M
]
m
}
1110
SO
RS
.
>
N
^
n
~
1111
SI
US
/
?
O
_
o
DEL
l           字符0~9是连续编码的,其ASCII码的低4位就是该字符在十进制数中对应的数值;
l           小写字母的ASCII码比大写字母的ASCII码大,对应字母的编码之间相差20H;
习题:
1.       汇编语言的主要特点有哪些?
与机器相关性、执行的高效率、编写程序的复杂性、调试的复杂性。
2.       汇编语言适用于哪些领域?在哪些领域使用不合适?(见第1页)
3.       在汇编语言中,如何表示二进制、八进制、十进制和十六进制的数值?
二进制书写时,在数据后面紧跟一个字母B,
八进制书写时,在数据后面紧跟一个字母Q,
十进制书写时,在数据后面紧跟一个字母D,
十六进制书写时,在数据后面紧跟一个字母H,如果第一个字符是字母时,在第一个字符之前必须添加一个0。
4.       在计算机中,如何表示正、负数?在保持数值大小不变的情况下,如何把位数少的二进制数值扩展成位数较多的二进制数值?
为了表示正、负数,并便于进行各种算术运算,对有符号数采用二进制的补码表示形式。补码的最高位用来表示正负数:0表示正数,1表示负数。正数的补码是其自身的二进制形式,负数的补码是把其正数的二进制编码取反,再加1而得。
符号扩展的具体操作就是把已知信息的最高位扩展到所有更高位。
5.       在ASCII表,字符“0”~“9”与数值0~9之间编码规律是什么?大写字母和小写字母之间的编码规律是什么?
字符“0”~“9”与数值0~9之间相差48D(30H)
大写字母和小写字母之间相差32D(20H)
 
6.       汇编语言中的基本数据类型是哪些?它与高级程序设计语言(如C语言)中的数据类型的对应关系是什么?
字节:由8位二进制组成,最高位是第7位,最低位是第0位,在表示有符号数时,最高位就是符号位。对应C语言中的char。
字:由2个字节组成,最高位是第15位,最低位是第0位。高8位称为高字节,低8位称为低字节。对应C语言中的int。
双字:由4个字节组成,高16位称为高字,低16位称为低字。可用于存储远指针,对应C语言中的float。
四字:由8个字节组成,在汇编语言中很少使用该数据类型,对应C语言中的double。
十字节:由10个字节组成,共有80位。C语言无对应类型。
字符串:由若干个字节组成的,字节数不定,通常每个字节存储一个字符。对应C语言中的char *,但它并没有C语言中的规定:以ASCII码0为字符串的结束符。




您好:
    当您在阅读和使用我所提供的各种内容的时候,我非常感谢,您的阅读已是对我最大的支持。
    我更希望您能给予我更多的支持。
    1.希望您帮助我宣传我的博客,让更多的人知道它,从中获益。
    2.希望您能多提出宝贵意见,包括我所提供的内容中的错误,建设性的意见,更希望获得哪些方面的帮助,您的经验之谈等等。
   
    我博客上面的内容均属于个人的经验,所有的内容均为开源内容,允许您用于任何用途,并不以付费为前提,如果您觉得在阅读和使用我所提供的各种内容的过程中,您得到了帮助,并能在经济上给予我支持,我将感激不尽。
   
    您可以通过银行转帐付款给我:
    招商银行一卡通:
    卡号:6225888712586894
    姓名:牟勇
   
    建行龙卡:
    卡号:4367423860500165563
    姓名:牟勇
   
    您也可以通过汇款的方式:
    通讯地址:云南省昆明市女子(28)中学人民中路如意巷1号
    收信人:陈谦转牟勇收
    邮编:650021
   
    无论您给予我怎么样的支持,我都衷心的再次感谢。
    欢迎光临我的博客:
    http://blog.csdn.net/mouyong
    http://blog.sina.com.cn/u/1259714872
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

默然说话

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值