目录
- 一. 汇编语言的基础知识
- 二. 常用的X86汇编指令
- 三. AT&T格式和Intel格式
- 四. 选择语句的机器级表示
- 五. 循环语句机器级表示
\quad
一. 汇编语言的基础知识
\quad
X86就是能被能够被以86结尾的CPU(如8086,80286,80386)支持的汇编语言指令
先对这些寄存器有个印象就可以
在X86里面一个字就表示16bit
\quad
二. 常用的X86汇编指令
\quad
只有可能来源于寄存器或主存不可能来源于常量
只有寄存器或主存才能存放结果
被除数是被提前放在edx和eax中,是隐含寻址
要先把32bit的被除数扩展为64位的然后再除以除数, 我们说以E开头的为32位所以,64bit要用两个寄存器
\quad
三. AT&T格式和Intel格式
\quad
两种格式的汇编语言
我们熟悉的是Intel格式
往年的408都是考察intel格式的, 所以重点还是之前的知识
byte代表8bit
word 代表16bit
Dword 代表 32bit
只给地址没有指明读写长度, 默认为32bit
\quad
四. 选择语句的机器级表示
\quad
所以题目中说IP程序计数器也就是PC程序计数器
程序员必须知道指令8执行完之后数据会被放到什么位置
为了解决这个问题
右边的方式比左边灵活的多
这种方式并不能满足if分支结构
\quad
五. 循环语句机器级表示
\quad
规定了只能用ecx作为循环计数器
能够结合C语言来分析汇编语言就可以了