- Mastering Assembly Programming
- Alexey Lyashko
- 195字
- 2021-08-20 10:23:26
Floating point registers
The CPU itself has no means for floating point arithmetic operations. In 1980, Intel announced the Intel 8087 - the floating point coprocessor for the 8086 line. 8087 remained as a separate installable device until 1989, when Intel came up with the 80486 (i486) processor, which had an integrated 8087 circuit. However, when talking about floating point registers and floating point instructions, we still refer to 8087 as a floating-point unit (FPU) or, sometimes, still as a floating-point coprocessor (however, the latter is becoming more and more rare).
8087 has eight registers, 80 bits each, arranged in a stack fashion, meaning that operands are pushed onto this stack from the memory and results are popped from the topmost register to the memory. These registers are named ST0 to ST7 (ST--stack) and the most used one, that is, the ST0 register, may be referred to as simply ST.
The floating-point coprocessor supports several data types:
- 80-bit extended-precision real
- 64-bit double-precision real
- 32-bit single-precision real
- 18-digit decimal integer
- 64-bit binary integer
- 32-bit binary integer
- 16-bit binary integer
The floating-point coprocessor will be discussed in more detail in Chapter 3, Intel Instruction Set Architecture (ISA).
- 精通Nginx(第2版)
- Visual C++程序設計教程
- Learn Swift by Building Applications
- 用Flutter極速構建原生應用
- Qlik Sense? Cookbook
- Python 3 Object:oriented Programming(Second Edition)
- TypeScript圖形渲染實戰:2D架構設計與實現
- H5+移動營銷設計寶典
- Python編程基礎教程
- INSTANT LESS CSS Preprocessor How-to
- Java核心編程
- Spring Boot 2+Thymeleaf企業應用實戰
- Go語言編程之旅:一起用Go做項目
- Learning QGIS(Second Edition)
- A/B 測試:創新始于試驗