MySQL 中 int 最大值

2021-09-12 17:48:02 字數 1091 閱讀 5123

前兩天看到的問題,展開寫一下。

我們都知道計算機是以二進位制為基礎。儲存的基本單位是bit,也稱為位元二進位制位。1bit 可以表示 0 或者 1 兩個數字,是可能存在的最小的資訊量,任何小於1 bit 的內容都算不上資訊。

複雜的內容就要用多 bit 來表示。byte,也稱為位元組,通常用作計量單位。1 byte 等於 8 bit,即 1 byte 可以表示 28 內容。

先說明一下,在 mysql 中的整數型別,可以分為unsignedsigned兩種,即無符號和有符號,具體內容這裡不展開。tinyint的大小就是 1 byte,在signed型別能表示的數字以下表為例。(注:**根據《編碼》修改,僅做舉例說明,不代表 mysql 實際儲存)

二進位制數

十進位制數

10000000

-128

10000001

-127

10000010

-126

10000011

-125

......

11111101

-311111110

-211111111

-100000000

000000001

100000010

2...

...011111100

124011111101

125011111110

126011111111

127在上表中我們看到,首位的 bit 用來表示符號,因此在sigend是少一位 bit 來儲存內容。int是 4 byte,結合上述,可以得出intsigned最大值為

$$ 2^-1=2147483647 $$

unsigned中,無需首位 bit 表示符號,因此為

$$ 2^-1=4294967295 $$

int 最大值 239 滑動視窗最大值

給定乙個陣列 nums,有乙個大小為 k 的滑動視窗從陣列的最左側移動到陣列的最右側。你只可以看到在滑動視窗內的 k 個數字。滑動視窗每次只向右移動一位。返回滑動視窗中的最大值。示例 輸入 nums 1,3,1,3,5,3,6,7 和 k 3 輸出 3,3,5,5,6,7 解釋 滑動視窗的位置 最大...

go語言int型別最大值

正數的補碼是自己本身 負數的補碼是,先取反碼 首尾不反 然後 1 2.在go語言中 0表示對0取反 我們假如是4位代表乙個數字的話,最高位是符號位 0在計算機中用補碼的形式存在是 0000 取反得到 1111 是 1在計算機中以補碼的形式存在,所以 0 就是 1 所以 1 就是 1110 就是 2 ...

int型的數到底最大值是多少?

首先,我們要知道在計算機裡怎麼儲存數字的。在計算機裡,對數字編碼有3種方式 原碼 補碼 反碼。原碼其實就是10進製數直接轉2進製數的結果。比如 十進位制的18,在二進位制裡是10010。那這裡的10010就是原碼。我們可以sizeof一下我們自己的電腦上int型佔幾個位元組。我的是4個位元組,也就是...