零基础入门~汇编语言(第四版王爽)~第1章基础知识
文章目录
前言
作者简介
王爽 著名计算机科学教育家,哲学家,在高等教育、计算机科学与技术、IT产业等诸多领域都有所成就。1975年出生于黑龙江省齐齐哈尔市。1997年毕业于宁夏大学计算机科学及应用专业。2007年开创了可行性哲学理论体系。从1999年起,陆续提出并实践了知识屏蔽、线索化、多元环境、可持续性发展能力培养、纯公益教育体系等一系列对我国教育事业的发展具有基础意义与启示意义的思想与理论。2005年到2012年,建立了“三个一工程”等多项旨在培养计算机专业学习者核心专业能力和综合素质的大型教育公益事业。王爽老师多年以来一直极力于推动教育发展的各项事业,是我国计算机专业领域的教育公益事业的开启者与多项大型教育公益事业的建立者。从2005年起到2012年,其在教育领域所进行的理论与实践工作,成为我国计算机专业领域的教育公益事业发展的基础。
1.1 机器语言
说到汇编语言的产生,首先要讲一下机器语言。机器语言是机器指令的集合。机器指令展开来讲就是一台机器可以正确执行的命令。电子计算机的机器指令是一列二进制数字。计算机将之转变为一列高低电平,以使计算机的电子器件受到驱动,进行运算。
上面所说的计算机指的是可以执行机器指令,进行运算的机器。这是早期计算机的概念。现在,在我们常用的 PC 机中,有一个芯片来完成上面所说的计算机的功能。这个芯片就是我们常说的CPU(Central Processing Unit, 中央处理单元),CPU 是一种微处理器。 以后我们提到的计算机是指由CPU 和其他受CPU 直接或间接控制的芯片、器件、设备组 成的计算机系统,比如我们最常见的PC机。
每一种微处理器,由于硬件设计和内部结构的不同,就需要用不同的电平脉冲来控 制,使它工作。所以每一种微处理器都有自己的机器指令集,也就是机器语言。
早期的程序设计均使用机器语言。程序员们将用0、1数字编成的程序代码打在纸带 或卡片上,1打孔,0不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算。
应用8086CPU完成运算s=768+12288-1280, 机器码如下:
101110000000000000000011
000001010000000000110000
001011010000000000000101
假如将程序错写成以下这样,请你找出错误。
101100000000000000000011
000001010000000000110000
000101101000000000000101
书写和阅读机器码程序不是一件简单的工作,要记住所有抽象的二进制码。上面只是 一个非常简单的小程序,就暴露了机器码的晦涩难懂和不易查错。写如此小的一个程序尚 且如此,实际上一个有用的程序至少要有几十行机器码,那么,情况将怎么样呢?
在显示器上输出 “welcome to masm”, 机器码如下:
00011110
101110000000000000000000
01010000
101110001100011000001111
1000111011011000
1011010000000110
1011000000000000
1011011100000111
101110010000000000000000
1011011000011000
1011001001001111
1100110100010000
1011010000000010
1011011100000000
1011011000000000
1011001000000000
1100110100010000
1011010000001001
10001101000101100010101000000000
1100110100100001
1011010000001010
10001101000101100011000100000000
1100110100100001
1011010000000110
1011000000010100
1011011100011001
1011010100001011
1011000100010011
1011011000001101
1011001000111100
1100110100010000
1011010000000010
1011011100000000
1011000000001100
1011001000010100
1100110100010000
1011010000001001
10001101000101100000000000000000
1100110100100001
11001011
看到这样的程序,你有什么感想?如果程序里有一个“1”被误写为“0”,又如何去 查找呢?
1.2 汇编语言的产生
早期的程序员们很快就发现了使用机器语言带来的麻烦,它是如此难于辨别和记忆, 给整个产业的发展带来了障碍。于是汇编语言产生了。
汇编语言的主体是汇编指令。汇编指令和机器指令的差别在于指令的表示方法上。汇编指令是机器指令便于记忆的书写格式。
例如:机器指令1000100111011000表示把寄存器 BX 的内容送到 AX 中。汇编指令 则写成mov ax,bx。这样的写法与人类语言接近,便于阅读和记忆。
操作:寄存器BX 的内容送到A

浙公网安备 33010602011771号