- 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).
- TypeScript Blueprints
- Java高并發核心編程(卷2):多線程、鎖、JMM、JUC、高并發設計模式
- 簡單高效LATEX
- Java Web及其框架技術
- Production Ready OpenStack:Recipes for Successful Environments
- 64位匯編語言的編程藝術
- 人人都懂設計模式:從生活中領悟設計模式(Python實現)
- Jenkins Continuous Integration Cookbook(Second Edition)
- Scala編程實戰
- JavaScript悟道
- 深入淺出Python數據分析
- Visual C++開發寶典
- WCF技術剖析(卷1)
- Modular Programming with JavaScript
- Mastering Bootstrap 4