位元組序
位元組序是指多位元組資料在計算機記憶體中儲存或者網路傳輸時各位元組的儲存順序。
1. little endian:將低序位元組儲存在起始位址
2. big endian:將高序位元組儲存在起始位址
big-endian、little-endian跟多位元組型別的資料有關的比如int,short,long型,而對單位元組資料byte卻沒有影響。
bombom(byte order mark,中文名譯作「位元組順序標記」。)
unicode規範中推薦的標記位元組順序的方法是bom。bom不是「bill of material」的bom表,而是byte order mark。bom是乙個有點小聰明的想法:
在ucs編碼中有乙個叫做"zero width no-break space"的字元,它的編碼是feff。而fffe在ucs中是不存在的字元,所以不應該出現在實際傳輸中。ucs規範建議我們在傳輸位元組流前,先傳輸字元"zero width no-break space"。
這樣如果接收者收到feff,就表明這個位元組流是big-endian的;如果收到fffe,就表明這個位元組流是little-endian的。因此字元"zero width no-break space"又被稱作bom。
utf-8與bom
utf-8 bom又叫utf-8 簽名,其實utf-8 的bom對uft-8沒有作用,因為 utf-8是以乙個位元組(byte)來表示乙個基本組成單位的,bom的存在是為了支援utf-16,utf-32才加上的。
utf-8其實是不需要bom來表明位元組順序,但可以用bom來表明編碼方式。字元"zero width no-break space"的utf-8編碼是ef bb bf。所以如果接收者收到以ef bb bf開頭的位元組流,就知道這是utf-8編碼了。
參考d.dark的部落格
Canvas 簡易寫字板
相信canvas大家都聽說過,今天我們就來用canvas寫個簡易畫板。首先 我們得在body的內部寫個canvas標籤 注意 這裡要給canvas標籤乙個邊框,以便我們看到畫布 標籤部分已經完成了。接下來就是js部分了 在寫js之前,分析要完成的動作 滑鼠按下,開始在畫布上有響應,且按下的位置,即為...
canvas製作簡易寫字板
實現思路 滑鼠按下,滑鼠移動,滑鼠鬆開時所經過的地方進行連線。實現 mycanvas width 500 height 600 style border 1px solid red canvas 獲得畫布容器 var mycanvas document.queryselector mycanvas ...
用C 編寫寫字板相關總結
用c 寫乙個寫字板,聽起來有趣,如果對相關方法不熟,寫起來還真的很費力,還要不斷地查資料,解決不斷出現的問題,下面我對相關功能進行講解。richtextbox1為richtextbox類的可編輯文字框 1 格式對齊語句一行 搞定,下面分別為左右中對齊。richtextbox1.selectional...