C语言 “高级汇编语言”。
汇编语言对应着机器语言,也就是0和1,汇编只是让机器语言更易读。但汇编语言就是一系列的指令,并没有相应的规范来便于人们编写代码,一般人 是想到那就写到哪,代码混乱不堪。
后来有人提出了过程式编程语言,这些语言定义了流程控制语句,分为顺序,循环,分支。并用函数来使程序分成一个个模块。而C语言就是其中翘楚。每句C语言都会被翻译为相应的汇编语言。不相信吗?
随我进入C和汇编的世界吧、
第一章 基本数据类型
C语言有以下基本数据类型。
数据类型 | 数据类型 | 32位系统下字节数 |
---|---|---|
char | unsigned char | 1 |
short | unsigned short | 2 |
int | unsigned int | 4 |
long | unsigned long | 4 |
long long | unsigned long long | 8 |
float | 4 | |
double | 8 |
32位汇编有一下3中mov指令
指令名 | 作用 |
---|---|
movb | 移动一个字节 |
movw | 移动2个字节 |
movl | 移动4个字节 |
int main(void)
{
int num=99;
return num;
}
简单的打印一个整数。而他的汇编呢?
.section rodata
.section text
.globl main
main:
pushl %ebp
movl %esp,%ebp
subl $4,%esp
movl $99,-4(%ebp)
movl -4(%ebp