汇编语言压缩十进制运算简介
本节讨论的指令仅用于 32 位编程模式。压缩十进制数的每个字节存放两个十进制数字,每个数字用 4 位表示。如果数字个数为奇数,则最高的半字节用零填充。存储大小可变:
1) 数据几乎可以包含任何个数的有效数字。这使得以很高的精度执行计算成为可能。
2) 实现压缩十进制数与 ASCII 码之间的相互转换相对简单。
DAA(加法后的十进制调整)和 DAS(减法后的十进制调整)这两条指令调整压缩十进制数加减法的结果。可惜的是,目前还没有与乘除法有关的相似指令。在这些情况下,相乘或相除的数必须是非压缩的,执行后再压缩。
下面分别对 DAA 指令和 DAS 指令做详细介绍:
《DAA 指令》
《DAS 指令》
bcd1 QWORD 2345673928737285h ;十进制数 2 345 673 928 737 285
bcd2 DWORD 12345678h ;十进制数 12 345 678
bcd3 DWORD 08723654h ;十进制数 8 723 654
bcd4 WORD 9345h ;十进制数 9345
bcd5 WORD 0237h ;十进制数 237
bcd6 BYTE 34h ;十进制数 34
1) 数据几乎可以包含任何个数的有效数字。这使得以很高的精度执行计算成为可能。
2) 实现压缩十进制数与 ASCII 码之间的相互转换相对简单。
DAA(加法后的十进制调整)和 DAS(减法后的十进制调整)这两条指令调整压缩十进制数加减法的结果。可惜的是,目前还没有与乘除法有关的相似指令。在这些情况下,相乘或相除的数必须是非压缩的,执行后再压缩。
下面分别对 DAA 指令和 DAS 指令做详细介绍:
《DAA 指令》
《DAS 指令》
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算