float在記憶體中用四個byte表示
符號位 sign
指數字 exponent
尾數 mantissa
1 bit
8 bits
23 bits
符號位:1正0負
指數字:範圍從0~255,但實際的指數等於這裡的指數減去127,所以真正的指數範圍從-127~128。
尾數:23bit的尾數實際上表示24bit的資料,因為所有二進位制小數都可以表示成1.***x ***x…。所以在表示24bit的二進位制小數時,1可以省略。
例如4.5在記憶體中表示為:
二進位制形式:100.1==>1*2^2 + 0*2^1 + 0*2^0 + 1*2^-1 = 4.5
記憶體中:
符號位 sign
指數字 exponent
尾數 mantissa
01000 0001
0010 0000 0000 0000 0000 000
合起來為:
0100 0000 1001 0000 0000 0000 0000 0000
0x40 90 00 00
將記憶體形式再轉換回十進位制形式的4.5:
1.0010 0000 0000 0000 0000 000(尾數) * 2^2(指數129-127=2)=100.1000 0000 0000 0000 0000 0
又如0.1在記憶體中表示為:
二進位制形式:0.0001 1001 1001 1001 1001 1001 1010==>0x0.199999a
記憶體中:
符號位 sign
指數字 exponent
尾數 mantissa
00111 1011
1001 1001 1001 1001 1001 101
合起來:
0011 1101 1100 1100 1100 1100 1100 1101
0x 3d cc cc cd
float在記憶體中用8個byte表示
符號位 sign
指數字 exponent
尾數 mantissa
1 bit
11 bits
52 bits
具體儲存形式和float相同。
資料型別基礎資料型別
資料型別 基礎型別 除八大基礎型別其他的都是引用型資料型別 引用資料型別 基礎資料型別 整型 byte 佔乙個位元組,範圍 128 127 short 佔兩個位元組,範圍 32768 32767 int 最常用 佔四個位元組,範圍 2147483648 2147483647 long 佔八個位元組 ...
資料型別 基本資料型別和引用資料型別
一.分類 1,五種簡單資料型別 基本資料型別 number,string,boolean,null,undefined,新增symbol es6 基本資料型別是指存放在棧中的簡單資料段,資料大小確定,記憶體空間大小可以分配,它們是直接按值存放的,所以可以直接按值訪問。1 undefined 宣告的變...
SQL 資料型別 MySQL 資料型別
在 mysql 中,有三種主要的型別 文字 數字和日期 時間型別。資料型別 描述char size 儲存固定長度的字串 可包含字母 數字以及特殊字元 在括號中指定字串的長度。最多 255 個字元。varchar size 儲存可變長度的字串 可包含字母 數字以及特殊字元 在括號中指定字串的最大長度。...