首页
社区
课程
招聘
为什么masm6.15中不能使用C作为变量名?
发表于: 2015-2-3 12:36 5264

为什么masm6.15中不能使用C作为变量名?

2015-2-3 12:36
5264
代码如下:
assume cs:code,ds:data
data segment
                a db 1,2,3,4,5,6,7,8
                c dw 0
data ends

code segment
        start:
                mov ax,data
                mov ds,ax
                mov si,0
                mov cx,8
            s:       
                mov al,a[si]
                mov ah,0
                add c,ax
                inc si
                loop s

                mov ax,4c00h
                int 21h
code ends
end start

用masm5.0编译正确,但用masm6.15提示:语法错误:c
但将c换成b或者其他就可以

这是为什么?c字符在masm6.15中被用作关键字了吗?

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 201
活跃值: (57)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
没人帮忙吗?谁有masm关键字列表?
2015-2-4 09:25
0
雪    币: 2664
活跃值: (3401)
能力值: ( LV13,RANK:1760 )
在线值:
发帖
回帖
粉丝
3
编译不通过你就换个呗,建议变量命名的时候规范一点,譬如: .data段中的全局变量 写成 g_xxx的形式,过程内的局部变量写成@xxx的形式
2015-2-4 09:38
0
雪    币: 38
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
会不会是因为进行add时的数据长度不统一造成的?615随着版本升级而严格化的检查?
615的原版doc,我好像是没看见有c的关键字 而且要是因为关键字的原因的话 难道不应该是定义的地方就报错说无效变量名什么的么
http://pan.baidu.com/s/1sjocGah
2015-2-4 13:27
0
雪    币: 9
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
刚查了一下MASM 6.1的手册里写着  "C"  的确是关键字,6.15 应该也一样。

C 主要用于 proc 和 proto,比如

myfunc proto c param1:dword


或者

myfunc proc c param1:dword
...
myfunc endp


声明 myfunc 函数使用 C 调用约定,这样 ret 时就不会清理参数堆栈,而是假定调用者会清理。
而且如果调用时用 invoke 的话,会自动根据被调函数的参数个数在 call 后面加  add esp ... 来清理参数堆栈。
2015-2-4 15:19
0
雪    币: 201
活跃值: (57)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
谢谢你们,尤其是5楼正解
2015-2-5 08:58
0
雪    币: 201
活跃值: (57)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
手册发一个给我行吗
2015-2-5 09:22
0
雪    币: 9
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
Miscrosoft masm61 programmers guide
http://pan.baidu.com/s/1hqqwV8S

p.313 Appendix D 是关键字列表
2015-2-5 11:01
0
雪    币: 201
活跃值: (57)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
找到了,谢谢
2015-2-8 16:15
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
http://pan.baidu.com/s/1hqqwV8S
view...
Miscrosoft masm61 programmers guide
OK!!!
2015-2-10 16:52
0
雪    币: 201
活跃值: (57)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
Thank you!!!
2015-2-11 09:32
0
游客
登录 | 注册 方可回帖
返回
//