12、深入理解汇编语言开发流程与技巧

深入理解汇编语言开发流程与技巧

1. 编程基础:从文本到代码

编程从宏观角度看,本质是处理文件,目标是将人类可读的文本文件处理成可执行程序文件。不同编程语言和工具集下,编程过程差异很大。在现代图形交互式开发环境中,很多文件处理在后台完成;而汇编语言编程,程序员需通过命令行或脚本文件明确处理文件。

将文本文件转换为二进制文件的过程是翻译,执行此操作的程序称为翻译器。程序翻译器能生成CPU可理解的机器指令,生成的二进制文件为目标代码文件。编译器处理高级语言源代码生成目标代码文件,汇编器则专门将汇编语言转换为目标代码文件,汇编语言的关键特性是能完全控制目标代码。

2. 汇编语言特性

一些人认为汇编语言一行源代码生成一条机器指令,这并不准确,因为部分行是给翻译器的指令,不生成机器指令。更好的定义是:汇编语言是允许对翻译器生成的每条机器指令进行完全控制的翻译语言,对应翻译器为汇编器。

与Pascal或C++编译器不同,汇编器能让程序员控制每条机器指令。例如Pascal编译器处理 “I := 42;” 语句时,输出的机器指令程序员无法更改;而汇编语言中,程序员可自行安排指令。

CPU的每条机器指令在汇编语言中有对应的助记符,方便程序员记忆。编写汇编语言源代码时,通常每行一个助记符,如:

mov eax,4
; 04H specifies the sys_write kernel call
mov ebx,1
; 01H specifies stdout
mov ecx,Message
; Load starting address of display 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值