原文:Erlang數據類型的表示和實現(2)——Eterm 和立即數

Erlang 數據類型的內部表示和實現 Erlang 中的變量在綁定之前是自由的,非綁定變量可以綁定一次任意類型的數據。為了支持這種類型系統,Erlang 虛擬機采用的實現方法是用一個帶有標簽的機器字表示所有類型的數據,這個機器字就叫做 term。在 位機器上,一個 term 為 位寬 在 位機器上,一個 term 默認為 位寬 注 。由於目前大規模的服務器基本上都是 位平台,所以本文下面的討論都 ...

2013-11-15 00:40 1 3911 推薦指數:

查看詳情

Erlang數據類型表示實現(5)——binary

binary 是 Erlang 中一個具有特色的數據結構,用於處理大塊的“原始的”字節塊。如果沒有 binary 這種數據類型,在 Erlang 中處理字節流的話可能還需要像列表或元組這樣的數據結構。根據之前對這些數據結構 Eterm 的描述,數據塊中的每一個字節都需要一個或兩個機器字來表達,明顯 ...

Mon Dec 02 02:15:00 CST 2013 6 5366
Erlang數據類型表示實現(3)——列表

列表 Erlang 中的列表是通過鏈表實現的,表示列表的 Eterm 就是這個鏈表的起點。列表 Eterm 中除去 2 位標簽 01 之外,剩下的高 62 位表示指向列表中第一個元素的指針的高 62 位。我們在生成一個列表的時候,會采用這樣的語法:L = [Head | Tail],Head ...

Fri Nov 15 08:41:00 CST 2013 7 3059
Erlang數據類型表示實現(1)——數據類型回顧

本文介紹 Erlang 語言中使用的各種數據類型以及這些數據類型Erlang 虛擬機內部的表示實現。了解數據類型實現可以幫助大家在實際開發過程中正確選擇數據類型,並且可以更好更高效地操作這些數據類型。本文對 Erlang 數據類型實現的總結目前是最全面的,可以作為 Erlang 數據 ...

Fri Nov 15 08:38:00 CST 2013 1 2555
Erlang數據類型表示實現(4)——boxed 對象

Boxed 對象 Boxed 對象是比較復雜的對象,在 Erlang 中主標簽為 10 的 Eterm 表示一個對 boxed 對象的引用。這個 Eterm 除去標簽之后剩下的實際上是一個指針,指向具體的 boxed 對象。如下圖所示,boxed 對象由對象頭和具體的數據組成,這些字都排布在一起 ...

Mon Dec 02 02:12:00 CST 2013 3 3308
抽象數據類型表示實現

抽象數據類型表示實現 (1)預定義常扯及類型: (2)數據結構的表示(存儲結構)用類型定義(typedef)描述;數據元素類型約定為ElemType, 由用戶在使用該數據類型時自行定義。 (3)基本操作的算法都用如下格式的函數來描述: 當函數返回值為函數結果狀態代碼時, 函數 ...

Fri Feb 21 04:45:00 CST 2020 0 1034
C# 水仙花實現 數據類型

//int 和int類型計算得到的結果還是int類型 eg:int a = 371 / 100 % 10。一 371除以100得到的是3,而不是3.71。二 再用3%10,求余為3 namespace 水仙花{ class Program { static void Main ...

Mon Oct 07 07:02:00 CST 2019 0 816
MySQL 表示日期的數據類型

類型名稱 日期格式 日期范圍 存儲需求 YEAR YYYY 1901 ~ 2155 1 個字節 TIME HH:MM:SS -838:59:59 ~ 838:59:59 ...

Mon Apr 13 01:08:00 CST 2020 0 874
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM