为每个本机代码的指令分配一个英语缩写来表示其功能,这些英语缩写被称为助记符,使用助记符的编程语言被称为汇编语言。将汇编语言编写的源代码转换成本机代码运行,完成这一功能的程序叫做汇编器,这一过程叫做汇编;反过来转换的程序叫做反汇编器,过程叫做反汇编。
汇编语言的源代码中的指令分为两种,一种是会被转换成本机代码的一般指令,另一种是专门针对汇编器的伪指令。伪指令负责告诉汇编程序的结构和汇编方法,因此也被称为汇编程序指令。
汇编语言指令的语法是操作码与操作数,其中操作码表示指令的动作,操作数表示指令的操作对象。而可以使用哪些操作吗需要取决于CPU的类型,操作数则可以是数值,内存地址,寄存器名等。
程序在运行时会分配一块名为栈的内存空间,数据在栈中会从下(编号较大的地址)往上(编号较小)存放,然后再从上往下取出,此时esp寄存器(栈指针寄存器)会记录当前栈顶数据的内存地址。栈是临时存放数据的内存空间,当存放多个数据时,会以esp记录的地址为起点进行计算,算出数据应该存在那个地址,然后存入。