1. Div
1.1. Dividend = Quotient*Divisor + Remainder
1.1.1. Reciprocal with Mul
1.2. Remainder-DIvisor
1.2.1. <=0
1.2.1.1. Quotient <<1 (fill with 1)
1.2.1.1.1. Divisor>>1
1.2.2. >0
1.2.2.1. Quotient<<1 (fill with 0)
2. Floating Point
2.1. Component
2.1.1. Fraction(mantissa)
2.1.2. Exponent
2.1.3. Sign
2.2. Precision
2.2.1. double: 8byte
2.2.2. single: 4byte
2.3. Addition
2.3.1. align exponent at larger one
2.3.1.1. Add Significands
2.3.1.1.1. Scientific normalize
2.4. Multiplication
2.4.1. Add Exponents
2.4.1.1. Multifly Significands
2.4.1.1.1. Normalize
3. Parallelism
3.1. SIMD
3.2. Partitioning
3.3. Pipelined
4. Add & Sub
4.1. Overflow
4.1.1. p+p = n
4.1.2. n+n = p
5. Mul
5.1. Multiplicand * Multiplier = Product
5.1.1. slow
5.1.1.1. Multiplier
5.1.1.1.1. 32bit
5.1.1.2. Multiplicand
5.1.1.2.1. 64bit
5.1.1.3. product
5.1.1.3.1. 64bit
5.1.1.4. ALU
5.1.1.4.1. 64bit
5.1.2. fast
5.1.2.1. multiplicand
5.1.2.1.1. 32bit
5.1.2.2. Product(low)+Multiplier(high)
5.1.2.2.1. 6bit
5.1.2.3. ALU
5.1.2.3.1. 32bit
5.2. LSB of Multipier
5.2.1. 1
5.2.1.1. ADD Reg(product), Multiplicand
5.2.1.1.1. Muliplicand << 1
5.2.2. 0