fbpx
维基百科

資料類型

程式設計型別系統中,数据类型(英語:Data type),又稱資料型態資料型別,是用來約束数据的解釋。在程式語言中,常見的数据类型包括原始类型(如:整數浮點數字元)、多元組、記錄單元、代數資料類型、抽象数据类型、參考型別、以及函式型別。資料類型描述了數值的表示法、解釋和結構,並以演算法操作,或是物件在記憶體中的儲存區,或者其它儲存裝置。

機器中的資料類型

所有在電腦中,基於數位電子學的底層資料,都是以位元(0 或 1)表示。其中資料的最小的定址單位,稱為位元組(通常是八位元,以八個位元為一組)。機器碼指令處理的單位,稱作字長(至 2007 年止,一般為 32 或 64 位元)大部分對字長的指令解譯,主要以二進制為主,如一個 32 位元的字長,可以表示從 0 至   的無符號整數值,或者表示從    的有符號整數值。由於有了二的補數,機器語言和機器大多不需要區分無符號和有符號資料類型。存在著特殊的算術指令,對字長中的位元使用不同的解釋,以此作為浮點數

原始資料類型

程式語言提供若干原始数据型別,以作為程式以及專用化複合類型的建立基礎。典型的原始資料類型包含各種整數、浮點數以及字串型別。儘管這些建立基礎:陣列、記錄單元以及參考所聯繫的資料,可能未包括在基本型別,但仍可將其視為若干原始值的聚集。

複合型別

這部分可包括以下內容(最終仍取決於程式語言):

  • RECORD
一組變數型別,例子:資料庫表格中的一行
  • TABLE
資料庫中的索引欄位
  • NESTED TABLE
任意的單一複合型別的一維陣列
  • VARRAY
同一型別變數、且固定大小的收集處

數值範圍

每一個資料類型都有一個數值上的最大和最小值,稱作數值範圍。了解數值的範圍是很重要的,尤其是當使用較小的型別時,你就只能儲存範圍之內的數值。試圖儲存一個超出其範圍的數值,可能會導致編譯或執行錯誤,或者不正確的計算結果(因為被截斷)。

一個變數的範圍,是基於用以保存數值的位元組數目,而且整數資料類型通常[註 1]能夠儲存   數值(此處的   是指位元)。對於其它的資料類型(例如,浮點數),其數值範圍更為複雜,且幾乎取決於所使用的儲存方法。還有一些不用完全部的位元,例如,布林只需一個位元,且表示一個二進制值(雖然在實踐中,通常會用完剩餘的 7 個位元)。某些程式語言[註 2]也允許反向決定,程式設計者定義解決問題所需的範圍和精度,然後由編譯器自動選擇合適的整數或浮點數。

下表列出常見的資料類型,及其數值範圍:[註 3]

資料類型 大小 範圍
整數型別
布尔型(Boolean) 1 bit 0 至 1
字节(Byte) 8 bit 0 至 255
(Word) 2 字节 0 至 65535
双字(Double Word) 4 字节,32bit 0 至 4,294,967,295
整数(Integer) 4 字节,32bit –2,147,483,648 至 2,147,483,647
长整数(Long Integer) 8 字节,64bit –9,223,372,036,854,775,808 至 9,223,372,036,854,775,807
浮點數型別
浮点数(Float) 4 位元組 1E-37 至 1E+37 (6 個小數位數)
双精度浮点数(Double Float) 8 位元組 1E-307 至 1E+308 (15 個小數位數)

資料結構

抽象類型

註釋

  1. ^ 有一個情況將一個或多個位元保留作其它用途,例如:奇偶校驗
  2. ^ 例如:AdaPascal
  3. ^ 注意,在平台和語言之間,資料類型的大小可能有所變化。表中列出的數值,是目前所使用且最常見的大小。

参考文献

  • Luca Cardelli, Peter Wegner. On Understanding Types, Data Abstraction, and Polymorphism, [1] (页面存档备份,存于互联网档案馆) from Computing Surveys (December, 1985).

参见

資料類型, 此條目已列出參考文獻, 但因為沒有文內引註而使來源仍然不明, 2019年8月24日, 请加上合适的文內引註来改善这篇条目, 在程式設計的型別系統中, 数据类型, 英語, data, type, 又稱資料型態, 資料型別, 是用來約束数据的解釋, 在程式語言中, 常見的数据类型包括原始类型, 整數, 浮點數或字元, 多元組, 記錄單元, 代數, 抽象数据类型, 參考型別, 类以及函式型別, 描述了數值的表示法, 解釋和結構, 並以演算法操作, 或是物件在記憶體中的儲存區, 或者其它儲存裝置, 目录, 機器. 此條目已列出參考文獻 但因為沒有文內引註而使來源仍然不明 2019年8月24日 请加上合适的文內引註来改善这篇条目 在程式設計的型別系統中 数据类型 英語 Data type 又稱資料型態 資料型別 是用來約束数据的解釋 在程式語言中 常見的数据类型包括原始类型 如 整數 浮點數或字元 多元組 記錄單元 代數資料類型 抽象数据类型 參考型別 类以及函式型別 資料類型描述了數值的表示法 解釋和結構 並以演算法操作 或是物件在記憶體中的儲存區 或者其它儲存裝置 目录 1 機器中的資料類型 2 原始資料類型 3 複合型別 4 數值範圍 5 資料結構 6 抽象類型 7 註釋 8 参考文献 9 参见機器中的資料類型 编辑所有在電腦中 基於數位電子學的底層資料 都是以位元 0 或 1 表示 其中資料的最小的定址單位 稱為位元組 通常是八位元 以八個位元為一組 機器碼指令處理的單位 稱作字長 至 2007 年止 一般為 32 或 64 位元 大部分對字長的指令解譯 主要以二進制為主 如一個 32 位元的字長 可以表示從 0 至 2 32 1 displaystyle 2 32 1 的無符號整數值 或者表示從 2 31 displaystyle 2 31 至 2 31 1 displaystyle 2 31 1 的有符號整數值 由於有了二的補數 機器語言和機器大多不需要區分無符號和有符號資料類型 存在著特殊的算術指令 對字長中的位元使用不同的解釋 以此作為浮點數 原始資料類型 编辑主条目 原始类型 程式語言提供若干原始数据型別 以作為程式以及專用化複合類型的建立基礎 典型的原始資料類型包含各種整數 浮點數以及字串型別 儘管這些建立基礎 陣列 記錄單元以及參考所聯繫的資料 可能未包括在基本型別 但仍可將其視為若干原始值的聚集 複合型別 编辑主条目 複合類型 這部分可包括以下內容 最終仍取決於程式語言 RECORD一組變數型別 例子 資料庫表格中的一行TABLE資料庫中的索引欄位NESTED TABLE任意的單一複合型別的一維陣列VARRAY同一型別變數 且固定大小的收集處數值範圍 编辑每一個資料類型都有一個數值上的最大和最小值 稱作數值範圍 了解數值的範圍是很重要的 尤其是當使用較小的型別時 你就只能儲存範圍之內的數值 試圖儲存一個超出其範圍的數值 可能會導致編譯或執行錯誤 或者不正確的計算結果 因為被截斷 一個變數的範圍 是基於用以保存數值的位元組數目 而且整數資料類型通常 註 1 能夠儲存 2 n displaystyle 2 n 數值 此處的 n displaystyle n 是指位元 對於其它的資料類型 例如 浮點數 其數值範圍更為複雜 且幾乎取決於所使用的儲存方法 還有一些不用完全部的位元 例如 布林只需一個位元 且表示一個二進制值 雖然在實踐中 通常會用完剩餘的 7 個位元 某些程式語言 註 2 也允許反向決定 程式設計者定義解決問題所需的範圍和精度 然後由編譯器自動選擇合適的整數或浮點數 下表列出常見的資料類型 及其數值範圍 註 3 資料類型 大小 範圍整數型別布尔型 Boolean 1 bit 0 至 1字节 Byte 8 bit 0 至 255字 Word 2 字节 0 至 65535双字 Double Word 4 字节 32bit 0 至 4 294 967 295整数 Integer 4 字节 32bit 2 147 483 648 至 2 147 483 647长整数 Long Integer 8 字节 64bit 9 223 372 036 854 775 808 至 9 223 372 036 854 775 807浮點數型別浮点数 Float 4 位元組 1E 37 至 1E 37 6 個小數位數 双精度浮点数 Double Float 8 位元組 1E 307 至 1E 308 15 個小數位數 資料結構 编辑主条目 資料結構抽象類型 编辑主条目 抽象型別註釋 编辑 有一個情況將一個或多個位元保留作其它用途 例如 奇偶校驗 例如 Ada Pascal 注意 在平台和語言之間 資料類型的大小可能有所變化 表中列出的數值 是目前所使用且最常見的大小 参考文献 编辑Luca Cardelli Peter Wegner On Understanding Types Data Abstraction and Polymorphism 1 页面存档备份 存于互联网档案馆 from Computing Surveys December 1985 参见 编辑 计算机科学主题 类型理論 關於类型的數學模型 型別系統 關於在程式語言型別中的選擇差異 取自 https zh wikipedia org w index php title 資料類型 amp oldid 75528624, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。