编程语言是用来和计算机交互的,但是计算机只认识0和1
0010110 0001 0000 0000 0000 0000 0000 0000 0000
0000100 0101 0100 0010 0110 0000 0100 0001 0000
0010110 0010 0000 0001 0000 0000 0000 0000 0000
0110110 0000 0000 0000 0000 0111 0000 0000 0000
0000100 0010 1001 0000 0000 1111 0000 0001 0000
直接和硬件交互
用0和1和计算机沟通
优点: 执行效率高
缺点: 开发效率低,人几乎看不懂,是给机器看的
;定义数据段
DATA SEGMENT
str db 'Hello World$' ;汇编语言的字符串要以$结尾
DATA ENDS
;定义代码段
CODE SEGMENT
ASSUME CS:CODE,DS:DATA ;将CS和CODE,DS和DATA段建立联系
START:
MOV BX,DATA
MOV DS,BX
LEA DX,str
MOV AH,9
INT 21H
MOV AH,4CH ;将控制权返回给终端。
INT 21H
CODE ENDS
END START
直接与硬件交互
优点(相较于机器语言):开发效率高
缺点(相较于机器语言):执行效率低
接近于人类语言
例如:C、JAVA、GO
和计算机硬件间接交互
记录下来,全部写完才能翻译.文件编译成另一个obj文件.再和计算机沟通得到结果
优点(相较于解释型语言):执行效率高
缺点(相较于解释型语言):开发效率低
例如:C语言
include 'stdio'
int main()
{
printf("Hello World!");
return 0;
}
把代码翻译成机器语言,通过编译器(汇编语言/机器语言写的)编译
说一句翻译一句
优点(相较于编译型语言):开发效率高
缺点(相较于编译型语言):执行效率低
例如:Python
print('helloo world')
将代码翻译成机器语言,一般是通过解释器(是由编译型语言写的)
就好像你去访问两个个网站,一个网站使用编译型语言编写的,还有一个网站是使用解释型语言编写的。编译型编写的响应速度是5ms,解释型的响应速度是6ms。但是,你网络延迟是10ms,也就是说,不管你是访问哪一个网站,你最快得到响应的速度也是10ms。
原文:https://www.cnblogs.com/Gredae/p/11252996.html