Intel 汇编与C语言

本文探讨了Intel汇编与C语言在编程实践中的相似之处,如调用API函数、使用库文件、预处理阶段的宏替换以及条件编译。作者通过对比汇编中的Irvine32库与C语言的库函数,以及汇编伪指令和C语言的预处理指令,阐述了两者在简化编程和提高效率方面的共通点。
摘要由CSDN通过智能技术生成

        学到这里,突然对汇编与C预言的相似之处做一下比较:

8086的汇编是16位的,调用的是dos与bios的中断例程


intel的这本汇编是win32的,调用的是操作系统提供的API函数

但是我们直接去调用API函数编程,需要很了解API函数,对于初学者很难理解,所以作者编写了库文件Irvine32.lib,其中包含了许多常用的过程(调用API函数实现),然后把这些过程的原型(或者说是声明)放到Irvine32.inc文件中,这样我们调用Irvine32.lib中的过程之前需要用include伪指令把Irvine32.inc中的内容复制到.asm格式的源文件中,使得我们可以很方便的使用控制台的一些常用功能。


这一点与C语言很相似,C语言中讲述了大量的库文件.lib格式的,比如我们常用的printf与scanf函数就包含在这些库文件中,在使用printf与scanf函数之前我们需要用#include编译指令把stdio.h头文件中包含的有关函数声明复制到.c(.cpp)源文件中,这样我们想在控制台窗口中显示字符时就不需要编写大量的代码,大大简化了编写的效率。

Intel汇编语言程序设计的作者采用的就是这样一种思路,这样方便了程序的直接演示。


C语言中经常看到#define定义了一个字符常量,这很像win32汇编中的equ伪指令,都是在预处理阶段把字符替换成数字,预处理是在编译、连接之前对源文件中的代码数据进行处理的工作,为源文件的正常编译做准备,宏就是在预处理阶段进行展开的(源文件中调用宏的地方替换成指令),经过预处理后的源文件再经过编译生成机器可以识别的目标文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值