assembly - 使用 IEND 时出现 ISTRUC NODE 错误“提供给 TIMES 的非常量参数”
问题描述
这是我的代码的一部分:
STRUC NODE
.Value: resd 1 ;data field
.NextPtr: resd 1 ;next pointer field
.PrevPtr: resd 1 ;previous pointer field
.size:
ENDSTRUC
SECTION .data
Head: ISTRUC Node
AT Node.Value, dd 0
AT Node.NextPtr, dd Second
AT Node.PrevPtr, dd Tail
IEND
Second: ISTRUC Node
AT Node.Value, dd 0
AT Node.NextPtr, dd Tail
AT Node.PrevPtr, dd Head
IEND
Tail: ISTRUC Node
AT Node.Value, dd 0
AT Node.NextPtr, dd Head
AT Node.PrevPtr, dd Second
IEND
我在使用“IEND”的每一行都有一个错误
任何帮助将不胜感激。
解决方案
nasm 区分大小写。您将您的 struc 声明为NODE
,然后尝试将其用作Node
.
在第一行更改NODE
为后,nasm 接受代码而没有错误。Node
推荐阅读
- excel - VBA 代码无法将现有工作表复制到新文件
- attributeerror - 涉及模块时如何修复 Traceback 和 Attributeerror?
- java - Java iTunes COM 接口 Jacob - 获取 PersistentIDs(PersistentIDLow 和 PersistentIDHigh)
- javascript - 如何在列表中的两个按钮之间添加和删除活动类?
- amazon-web-services - 网络负载均衡器现实生活中的例子?
- excel - 为投资组合分配多个权重
- azure-functions - 使用 Azure 函数将文件从 Azure 存储上传到 SFTP
- docker - docker中的prometheus无法重新加载配置文件
- r - R中k-means的nstart
- shell - VSCode 终端:如何显示执行时间?