NASM手册阅读笔记(8) - 其他

%include

格式

%include file.asm

说明

包含其他的asm源文件,可使用C常用的防止被重复包含的方法
%ifndef MACROS_MAC            
%define MACROS_MAC     
; 文件内容      
%endif 
 

%rep

格式

%rep  重复次数
  XXXXX 要重复的代码内容
%endrep

说明

和MASM中 rept 一样的意思 就是重复指令,可以认为是TIMES指令的多行版    
可与assign 联用
%assign i 0        
%rep    64               
  inc     word [table+2*i]       
  %assign i i+1        
%endrep 
 

%line 

格式

%line  nnn[+mmm]   文件名
 

说明

%include 指令的高级版,他可以指定加载某哥文件某行进来
nnn 是基础行
mmm 是递增值,也就是读一个文件 nnn 就++mmm
    

%!

格式

%! 变量名

说明

读取一个环境变量加载进来

%error 

格式

%error  错误信息

说明

当汇编器读到这条指令的时候就会产生一个变异错误,错误内容就是 指令中的错误信息

%strlen

格式

%strlen     x    字符串

说明   

计算字符串的长度,并将X定义为这个常数
%strlen     x    “abc”
相当于
%assign   x        3
 
它接收宏,所以可以这样
%define     strhello    'hello,world'
%strlen      strhellolen   strhello
    

%substr

格式

%substr    变量  字符串     pos

说明

从字符串中取第pos个字符赋值给前面的变量

例子

%substr    char  'hello'    1    ; =>    %define char 'h'
%substr    char  'hello'    2    ; =>    %define char 'e'
    
 
posted @ 2020-02-09 19:40  蹦蹦骑士  阅读(561)  评论(0编辑  收藏  举报