duling 2019-03-30
试着记住下面这些字符串:“ADD 1,2”、“SUB 1,2”、“1011011000000000”、“1011010100000000”,你先记住了谁?显然是前面两个。它们就是汇编语言的加法和减法语句。由于以二进制编码产生的机器语言既难懂又难记,人们为了便于阅读记忆,就将原来的机器代码以英文字符串的形式来表示,这就是汇编语言。例如用汇编语言“ADD 1,2”中的“ADD”代表机器语言“1011011000000000”,表示要求计算机做一次加法;用汇编语言“SUB 1,2”中的“SUB”代表机器语言“1011010100000000”,表示要求计算机做一次减法等等。比起那两串长长的二进制代码,“ADD”和“SUB”是不是简单好记得多?
汇编语言的出现大大方便了程序员的程序编写和记忆,使计算机语言的发展向前迈进了一大步。但实际上,汇编语言仍然是一种低级语言,仍然是面向机器硬件的程序设计语言。不过也正因为如此,汇编语言今天仍被广泛用于编写面向机器硬件的实时控制程序和系统程序。例如机器自检、系统初始化、实际的输入和输出设备的操作等等。
机器语言
机器语言是最早的计算机语言,也是计算机唯一可以识别和接受的语言。谈到机器语言,我们就不得不再一次谈到“指令”。在第三章中我们曾讲过什么是指令,这里,我们要说的是指令与机器语言的关系。
同军舰上的旗语一样,人们在设计某一类型计算机的同时也为它设计了一套“旗语”——“指令系统”。指令系统就是一台计算机所能执行的全部指令。在指令系统中,人们事先规定好了某一个二进制代码代表的是哪一种操作。例如在16位机上,人们规定:用1011011000000000作为一条加法指令,计算机在接收到此指令后就执行一次加法,用1011010100000000作为减法指令,命令计算机去执行一次减法等等。16个“0”和“1”的排列组合可以形成65 536条指令,这些指令通过一定的逻辑电路转换为不同的电信号,就可以“指挥”计算机执行各种不同的操作了。这种由“0”和“1”组成的指令,就叫做“机器指令”。一种计算机系统的全部机器指令的集合就称为该计算机的“机器语言”。瞧,我们很轻易地就搞清了指令与机器语言的关系。
实际上,机器语言就是用二进制代码编写的、机器能够直接识别的指令。机器语言看上去仍然既抽象又乏味,在计算机技术发展的初期,它曾使早期的程序员苦不堪言,而今天的程序员对待它的态度也是——敬而远之。
重要的信息:机器语言是计算机唯一可识别和接受的语言。“我自己是一名从事了10年的老程序员,辞职目前在做讲师,今年年初我花了一个月整理了一份最适合2018年学习的c++干货,从最基础的到深入的都有整理,送给每一位编程小伙伴,这里是小白聚集地,欢迎初学和进阶中的小伙伴。"加企鹅群:648778840(招募中)
学习思路:
学习资料: