汇编与 C 之间的关系

Python022

汇编与 C 之间的关系,第1张

C语言是从汇编中提炼而来

C语言最终会被编译为汇编

C能做的事汇编能做 反过来 不一定

汇编面向的是CPU CPU提供了官方手册

C面向编译器 C也有自己的手册

计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。

1. 机器语言

电子计算机所使用的是由“0”和“1”组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由“0”和“1”组成的指令序列交由计算机执行,这种语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。机器语言,是第一代计算机语言。

2. 汇编语言

为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“A D D”代表加法,“M O V”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。

汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。

现在的单片机基本都支持C语言了,而且单片机的速度也很快的。

就目前的编程语言来说,汇编语言在程序编写方面已经几乎没有什么作用,通俗的说就是过时了。不过汇编语言由于是基于微机原理的一门语言,它和微机的工作原理密不可分,因此,汇编语言仍然会被学习,不过现在并不是用来做一门编程工具使用,它主要目的是帮助我们理解计算机原理。他和C语言关系其实不大,它比C语言还低一级。因此,如果你想往软件方面发展,建议你还是去学习C语言,C++,JAVA这一类的语言。我强烈推荐C语言,因为,C语言比较简单,同时又是基础,如果你学好了C语言,那么你的C++也会很简单就学明白。你想学C语言的话,有一本书叫《C语言技术基础》很适合初学者。