类型描述 | 类型 | 缩写 | 位数 | 字节数 | 浮点数有效位 | 数值范围 |
---|---|---|---|---|---|---|
字节 | BYTE | DB | 8 | 1 | 0..255 | |
有符号字节 | SBYTE | DB | 8 | 1 | -128..127 | |
字 | WORD | DW | 16 | 2 | 0..65535 | |
有符号字 | SWORD | DW | 16 | 2 | -32768..32767 | |
双字 | DWORD | DD | 32 | 4 | 0..4294967295 | |
有符号双字 | SDWORD | DD | 32 | 4 | -2147483648..2147483647 | |
远字 | FWORD | DF | 48 | 6 | ||
四字 | QWORD | DQ | 64 | 8 | ||
十字节 | TBYTE | DT | 80 | 10 | ||
单精度浮点数 | REAL4 | 32 | 4 | 6 | 1.18*10-38..3.40*1038 | |
双精度浮点数 | REAL8 | 64 | 8 | 15 | 2.23*10-308..1.79*10308 | |
10字节浮点数 | REAL10 | 80 | 10 | 19 | 3.37*10-4932..1.18*104932 |
注: 类型缩写(譬如用 db 代替 byte)不能用于局部变量.
进制表示(其中的 d t b y q o h 不区分大小写):
; Test5_1.asm .386 .model flat, stdcall include windows.inc include kernel32.inc include masm32.inc include debug.inc includelib kernel32.lib includelib masm32.lib includelib debug.lib .data v1 dd 10 ;十进制 v2 dd 10d ;十进制(Decimal) v3 dd 10t ;十进制 v4 dd 10b ;二进制(Binary) v5 dd 10y ;二进制 v6 dd 10q ;八进制 v7 dd 10o ;八进制(Octal) v8 dd 10h ;十六进制(Hexadecimal) v9 dd 0ah ;十六进制; 如果第一位不是数字应前置 0 .code start: PrintDec v1 ;10 PrintDec v2 ;10 PrintDec v3 ;10 PrintDec v4 ;2 PrintDec v5 ;2 PrintDec v6 ;8 PrintDec v7 ;8 PrintDec v8 ;16 PrintDec v9 ;10 ret end start
浮点数:
; Test5_2.asm .386 .model flat, stdcall include windows.inc include kernel32.inc include masm32.inc include debug.inc includelib kernel32.lib includelib masm32.lib includelib debug.lib .data v1 real8 3.14 v2 real8 3. v3 real8 3.14E2 .code start: PrintDouble v1 ;3.14 PrintDouble v2 ;3 PrintDouble v3 ;314 ret end start
常量、可赋初值的变量、不赋初值的变量:
; Test5_3.asm .386 .model flat, stdcall include windows.inc include kernel32.inc include masm32.inc include debug.inc includelib kernel32.lib includelib masm32.lib includelib debug.lib .const ;常量 v1 dd 11 .data ;可赋初值的变量, 其中也可声明不不赋初值的变量 v2 dd 22 v3 dd ? .data? ;不赋初值的变量 v4 dd ? .code start: PrintDec v1 ;11 PrintDec v2 ;22 PrintDec v3 ;0 PrintDec v4 ;0 mov eax, 33 mov v3, eax mov eax, 44 mov v4, eax PrintDec v1 ;11 PrintDec v2 ;22 PrintDec v3 ;33 PrintDec v4 ;44 ret end start
汇编中的标识符(变量名、常量名、过程名、标号)可以使用下面符号:
A-Z a-z 0-9 _ @ $ ?
但第一个字符不能是数字(0-9), 长度不要超过 239 个字符.
分类:
Delphi 与汇编入门
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
2008-04-04 使用剪切板[5]: SetAsHandle、GetAsHandle - 自定义格式
2008-04-04 使用剪切板[4]: 如果把子控件一起复制? - 同时回复 ghd2004 的问题
2008-04-04 使用剪切板[3]: SetComponent、GetComponent