编程世界:从汇编到高级语言的探索之旅
1. 编程基础:从机器码到汇编语言
编程的世界中,所有计算机都执行机器码,但用机器码编程就像用牙签吃饭,过程繁琐且效率低下。机器码的字节执行的是极其微小和简单的计算任务,如从内存加载数字到处理器、进行加法运算、将结果存储回内存等,很难想象它们如何构成一个完整的程序。
不过,我们已经从早期使用控制面板上的开关将二进制数据输入内存的原始时代有所进步。现在,我们可以编写简单的程序,使用键盘和视频显示器输入和检查十六进制字节的机器码,但这仍有改进空间。
机器码的字节与一些简短的助记符相关联,如 MOV、ADD、JMP 和 HLT 等,这些助记符结合操作数能更清晰地表示机器码指令的功能。例如,8080 机器码字节 46h 可简洁地写成 MOV B,M ,其中 M 代表“内存”。这些助记符(加上一些附加特性)构成了一种称为汇编语言的编程语言。用汇编语言编写程序比用机器码容易得多,但 CPU 无法直接理解汇编语言。
在早期使用原始计算机时,人们通常会先在纸上编写汇编语言程序,满意后再手动将其转换为机器码字节并输入内存。手动汇编的难点在于处理跳转和调用指令,因为需要知道目标的精确二进制地址,而这依赖于所有其他机器码指令的位置。
为了让计算机完成这种转换,我们可以按以下步骤操作:
1. 编写一个文本编辑器程序(需手动汇编),用于输入文本行并保存为文件。
2. 创建包含汇编语言指令的文本文件。
3. 手动汇编一个名为汇编器的程序,该程序读取包含汇编语言指令的文本文件,并将这些指令转换为机器码,保存到另一个文件中。
4. 将该文件的内容加载到内存中执行。
超级会员免费看
订阅专栏 解锁全文
32

被折叠的 条评论
为什么被折叠?



