4、80x86 汇编语言入门与资源指南

80x86汇编语言入门与资源指南

80x86 汇编语言入门与资源指南

1. 高级语言条件语句的汇编翻译

CPU 并不直接支持 if 机器指令。在汇编语言里,要实现类似高级语言(HLL)中 if 语句的功能,需要先比较两个值来设置条件码标志,然后通过条件跳转指令来测试这些条件码的结果。

以将一个 Pascal 的 if 语句翻译成 HLA 汇编语言为例:

mov( i, eax );      // 获取 i 的值
cmp( eax, j );      // 与 j 的值进行比较
jne skipIfBody;     // 如果 i 不等于 j,则跳过 if 语句体
<< 打印字符串的代码 >>
skipIfBody:

当 HLL 语言控制结构中的布尔表达式变得更复杂时,对应的机器指令数量也会增加,但基本的处理流程保持不变。

2. 汇编语言的参数传递与数据访问

在汇编语言中,向过程或函数传递参数、在过程或函数内部访问这些参数,以及访问该过程或函数的其他局部数据,比典型的 HLL 更加复杂。不过,在阅读汇编代码时,不需要自己去考虑使用哪些机器指令,因为最初创建代码的编译器或汇编程序员已经完成了这些工作,我们只需在 HLL 代码和汇编代码之间建立对应关系即可。

3. 学习汇编语言的资源

有许多资源可以帮助我们学习汇编语言:
- 《The Art of Assembly Language

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值