汇编语言中的数值处理
1. 数值数据类型概述
在汇编语言编程中,数值的表示和处理是重要组成部分。几乎每个应用程序都会使用某种类型的数值数据来处理信息。汇编语言能以多种不同格式表示数字,与高级语言类似,但在汇编语言里,存储在内存或寄存器中的值可被解释为多种不同的数据类型,程序员需确保使用正确的指令以正确方式解释存储的数据。
IA - 32平台的汇编语言程序中可用的核心数值数据类型如下:
- 无符号整数
- 有符号整数
- 二进制编码的十进制数
- 压缩二进制编码的十进制数
- 单精度浮点数
- 双精度浮点数
- 双扩展精度浮点数
此外,奔腾处理器上的SIMD扩展还增加了其他高级数值数据类型:
- 64位压缩整数
- 128位压缩整数
- 128位压缩单精度浮点数
- 128位压缩双精度浮点数
2. 整数类型
2.1 标准整数大小
整数可由不同大小表示,即用于表示整数值的字节数。基本IA - 32平台支持四种不同的整数大小:
| 整数类型 | 位数 |
| ---- | ---- |
| 字节(Byte) | 8位 |
| 字(Word) | 16位 |
| 双字(Doubleword) | 32位 |
| 四字(Quadword) | 64位 |
需要注意的是,使用超过1字节存储在内存中的整数采用小端格式存储,即最低位字节存储在最低内存位置,其余字节依次存储。但当整数值移到寄存器时,值在寄存器中以大端格式存储。如下示例:
超级会员免费看
订阅专栏 解锁全文
1242

被折叠的 条评论
为什么被折叠?



