文档介绍:第1章基础知识 ◆汇编语言程序设计概述 ◆进位计数制及其相互转换 ◆计算机中数的表示 ◆计算机中字符的表示
汇编语言程序设计概述
机器语言是计算机第一代语言,它全部由0、1代码组成,是能够直接被机器所接受的语言,是最底层的计算机语言。机器语言不容易记忆,程序编写难度大,调试修改繁琐,且不易移植,现程序员很少用。但机器语言执行速度最快,它是一种面向机器的程序设计语言。
机器语言汇编
具有一定含义的符号作为助忆符,用指令助忆符、符号地址等组成的符号指令称为汇编格式指令(或汇编指令)。汇编语言是汇编指令集、伪指令集和使用它们规则的统称。汇编语言比机器语言直观,容易记忆和理解,用汇编语言编写的程序也比机器语言程序易读、易检查、易修改。对于不同的计算机,针对同一问题所编写的汇编语言源程序是互不通用的。用汇编语言编写的程序执行效率比较高,但通用性与可移植性仍然比较差。计算机不能直接识别用汇编语言编写的程序,必须由一种专门翻译程序将汇编语言程序翻译成机器语言程序,计算机才能执行。
汇编语言
1. 可以更深刻认识计算机的工作过程
用汇编语言编制程序,可以清楚地了解计算机是怎样完成各种复杂工作的。在此基础上,程序设计人员更能充分地利用机器硬件的全部功能,发挥机器的长处。
2. 许多领域和场合需要使用汇编语言
.与硬件资源密切相关的软件开发;
.要求执行效率高、反应快的领域;
.受存储容量限制的应用领域。
为什么要学习和使用汇编语言
返回
1. 数制的概念
按进位的原则进行计数叫进位计数制,简称数制。每种数制都有其基数和各数位的位权。基数是指该数制中允许选用的基本数码的个数。每个数码所表示的数值等于该数码乘以一个与数码所在位置有关的常数,这个常数叫位权,位权的大小是以基数为底,数码所在位置的序号为指数的整数次幂。
在汇编语言中常用的数制有:十进制、二进制、八进制和十六进制。
进位计数制及其相互转换 进位计数制
十进制数的基数为10,十进制数的位权为10i,其中i代表数字在十进制数中的序号,任意一个10进制N可表示为:
N = anan-1 … -1…a-m
= an×10n + an-1×10n-1 +…+a1×101 + a0×100
+ a-1×10-1 +……+a-m×10-m
-m = ∑ai×10i
i=n
2. 二进制
二进制数的基数为2,二进制数中每一个数字的位权由2的幂次决定,即:2i, 其中i为数字在二进制数中的序号。
1. 十进制
N = anan-1 ….. -1……a-m
= an×2n + an-1×2n-1 +….. +a1×21 + a0×20 + a-1×2-1 +……+a-m×2-m
-m
= ∑ai×2i
i=n
3. 十六进制
十六进制数的基数为16,十六进制中每位数字的位
权由16的幂次决定
N = anan-1 ….. -1……a-m
= an×16n+an-1×16n-1+…+a1×161+a0×160+a-1×16-1+……+a-m×16-m
-m
= ∑ai×16i
i=n
其中m,n意义同前,ai取值范围为0-9,A,B,C,D,
E,F中任一数字。
各种数制间的相互转换
将数由一种数制转换成另一种数制称为数制间的
转换。
1. 非十进制转换成十进制
非十进制数转换成十进制数采用“位权法”,即把非
十进制数写成各自的按权展开式,然后按十进制运算
原则求和,其和值就是转换后对应的十进制数。
【】将十六进制数B2F转换成十进制数。
(B2F)16= B×162 + 2×161 + F×160
= 11×162 + 2×161 + 15×160
= 2816 + 32 + 15 = (2863)10
2. 十进制数转换成非十进制数
将一个十进制数转换非十进制数时,整数部分
和小数部分的转换方法是不同的,需将整数部分和
小数部分分别转换,将两个转换结果结合起来就可
以得到对应的非十进制数。
(1) 十进制整数转换成非十进制
整数将十进制整数转换为非十进制整数采用“除
基取余法”,即:将十进制整数及此期间产生的商逐
次除以需转换为数制的基数。直到商为零为止,并
记下每一次相除所得到的余数。按从后往前的次序
将各余数记作KnKn-1Kn-2……K0,从而构成转换后
对应的非十进制整数。第一次得到的余数为非十进
制数的最低位,最后一次得到的余数为非十进制数
的最高位。
【】将整数125转换成对应的十六进制整数
则得:(125)1