什么是编程语言?
“编程语言(programming language)可以简单的理解为一种计算机和人都能识别的语言。
编程 是个动词,编程 == 写代码,写代码为了什么?为了让计算机干你想要干的事情
编程语言处在不断的发展和变化中,从最初的机器语言发展到如今的2500种以上的高级语言,每种语言都有其特定的用途和不同的发展轨迹。
编程语言并不像人类自然语言发展变化一样的缓慢而又持久,其发展是相当快速的,这主要是计算机硬件、互联网和IT业的发展促进了编程语言的发展。
有哪些编程语言?
机器语言
由于计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称为机器指令
机器语言编写的程序无明显特征,难以记忆,不便阅读和书写,且依赖于具体机种,局限性很大,机器语言属于低级语言。
集成示例
0000,0000,000000010000 代表 LOAD A, 16
0000,0001,000000000001 代表 LOAD B, 1
0001,0001,000000010000 代表 STORE B, 16
0001,0001,000000000001 代表 STORE B, 1[1]
汇编语言
汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。
; hello.asm
section .data ; 数据段声明
msg db "Hello, world!", 0xA ; 要输出的字符串
len equ $ - msg ; 字串长度
section .text ; 代码段声明
global _start ; 指定入口函数
_start: ; 在屏幕上显示一个字符串
mov edx, len ; 参数三:字符串长度
mov ecx, msg ; 参数二:要显示的字符串
mov ebx, 1 ; 参数一:文件描述符(stdout)
mov eax, 4 ; 系统调用号(sys_write)
int 0x80 ; 调用内核功能
; 退出程序
mov ebx, 0 ; 参数一:退出代码
mov eax, 1 ; 系统调用号(sys_exit)
int 0x80 ; 调用内核功能
高级语言
高级语言是大多数编程者的选择。
我们现在大多数人使用的语言,如C、C++、C、#Python、Java、Matlab、PHP等等,都属于高级语言,相对于低级语言,它更接近于我们平时正常的人思维,其最大的特点是编写容易,代码可读性好。
高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行
编程语言 | 表示方式 | 特点 |
---|---|---|
机器语言 | 二进制代码(01) | 直接执行、速度快(面向机器) |
汇编语言 | 助记词 | 和硬件相关、用于底层、硬件操作和高要求场合 |
高级语言 | 最接近人类语言 | 与硬件结构无关、大多数程序员的选择 |
主要的编程语言及特点
编译型语言和解释型语言
编译型语言:我们编写的源代码是人类语言,我们自己能够轻松理解;但是对于计算机硬件(CPU),源代码就是天书,根本无法执行,计算机只能识别某些特定的二进制指令,在程序真正运行之前必须将源代码转换成二进制指令。
解释型语言:每次执行程序都需要一边转换一边执行,用到哪些源代码就将哪些源代码转换成机器码,用不到的不进行任何处理。