第四章 NASM预处理器。
--------------------------------
NASM拥有一个强大的宏处理器,它支持条件汇编,多级文件包含,两种形式的
宏(单行的与多行的),还有为更强大的宏能力而设置的‘context stack'机制
预处理指令都是以一个'%'打头。
预处理器把所有以反斜杠(/)结尾的连续行合并为一行,比如:
%define THIS_VERY_LONG_MACRO_NAME_IS_DEFINED_TO /
THIS_value
、
会像是单独一行那样正常工作。
4.1 单行的宏。
4.1.1 最常用的方式: `%define'
单行的宏是以预处理指令'%define'定义的。定义工作同C很相似,所以你可
以这样做:
%define ctrl 0x1F &
%define param(a,b) ((a)+(a)*(b))
mov byte [param(2,ebx)], ctrl 'D'
会被扩展为:
mov byte [(2)+(2)*(ebx)], 0x1F & 'D'
当单行的宏被扩展开后还含有其它的宏时,展开工作会在执行时进行,而不是
定义时,如下面的代码:
%define a(x) 1+b(x)
%define b(x) 2*x
<
最后
以上就是欢喜豌豆最近收集整理的关于Nasm中文手册四的全部内容,更多相关Nasm中文手册四内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复