MASM中3中文本宏的使用与区别

简介:

    = 宏

格式 : name = exp

其中,exp只能为32位整数值,且用=宏定义的符号名称可以重定义;


    EQU 宏

格式1:name EQU exp

exp为有效整数值,可以重定义;

格式2:name EQU sym或<sym>

当MASM在后面遇到已定义的sym时,就会用该名字代表的整数值或文本代替,不可重定义;


    TEXTEQU 宏

格式1:name TEXTEQU <text>

name定义为text的字面值

格式2:name TEXTEQU sym

该sym前面必须定义过,且不能为整数字面值。此时name被sym定义内容所替代;

格式3:name TEXTEQU %exp

exp必须为有效整数值


相关文章
|
2月前
|
编译器 Linux C语言
预处理详解(#和##运算符、命名约定、#undef​​、命令行定义​、条件编译、头文件的包含​)
预处理详解(#和##运算符、命名约定、#undef​​、命令行定义​、条件编译、头文件的包含​)
|
2月前
|
编译器 C语言
C语言宏定义(#define定义常量​、#define定义宏​、 带有副作用的宏参数、 宏替换的规则、 宏函数的对比)
C语言宏定义(#define定义常量​、#define定义宏​、 带有副作用的宏参数、 宏替换的规则、 宏函数的对比)
|
3月前
|
Rust 编译器 开发者
Rust中的进阶宏:派生宏与属性宏
本文将深入探讨Rust编程语言中的派生宏(Derive Macros)和属性宏(Attribute Macros)这两种进阶宏的用法。派生宏用于自动生成实现特定trait的代码,而属性宏则允许我们为模块、函数、结构体等添加自定义属性。我们将通过实例展示如何在Rust项目中使用这些高级宏来增强代码的可读性和可维护性。
|
5月前
|
安全 编译器 网络安全
探索C语言中的Shellcode从提取到执行
ShellCode是一种独立于应用程序的机器代码,通常用于实现特定任务,如执行远程命令、注入恶意软件或利用系统漏洞。在网络安全领域,研究Shellcode是理解恶意软件和提高系统安全性的关键一环。本文将深入探讨如何在C语言中提取Shellcode,并通过XOR加密技术增加其混淆程度。最后,我们将演示如何将Shellcode写入文件并在内存中执行。
53 1
|
9月前
|
C++
C++宏 #与##的区别
C++宏 #与##的区别
35 0
|
11月前
|
C语言 C++
C++ 链接库顺序导致的符号未定义问题
C++ 链接库顺序导致的符号未定义问题
84 0
|
C语言
gcc编译时传递宏定义
gcc编译时传递宏定义
207 0
|
编译器 C语言
C语言 预处理详解(#include、#define、#if,特殊预定宏)
C语言 预处理详解(#include、#define、#if,特殊预定宏)
419 0
C语言 预处理详解(#include、#define、#if,特殊预定宏)
|
IDE 编译器 开发工具
MFC的宏_T()和_L()的区别,以及VS2017正则表达式批量替换_T()
MFC的宏_T()和_L()的区别,以及VS2017正则表达式批量替换_T()
386 0
MFC的宏_T()和_L()的区别,以及VS2017正则表达式批量替换_T()