Unicode to UTF-8字碼轉換

今天同學問到 Unicode 與 UTF-8的轉換,順便對 Unicode 與 UTF-8做一個基本的瞭解。以往的印象 Unicode就是為了統一全球語言文件的編碼,但實際使用上,比如我設定Linux或軟體時,又都會選UTF-8,然而兩者有什麼差別呢?

維基百科上的說明是

Unicode統一碼萬國碼單一碼是一種在電腦上使用的字元編碼。它為每種語言中的每個字元設定了統一併且唯一的二進位編碼,以滿足跨語言、跨平臺進行文本轉換、處理的要求。1990年開始研發,1994年正式公佈。隨著電腦工作能力的增強,Unicode也在面世以來的十多年裡得到普及。

最新版本的 Unicode 是 2006年7月14日推出的Unicode 5.0.0。

Unicode(統一碼)以2byte表達,共有65536種組合,然而Unicode 只是一個字形和內碼上的標準,並沒有定義實際在電腦上存取的方法,因此Unicode協會便定義了一整套的電腦存取Unicode編碼的轉換格式,並考慮了與其它編碼方式兼容,稱之為UTF(Unicode/UCS Transformation Format,統一碼/通用字集變換格式)。常用的格式有UTF-8和UTF-16。

UTF-8(8 位元 Universal Character Set/Unicode Transformation Format)是Unicode 的其中一種可變長度字元編碼。它可以用來表示 Unicode 標準中的任何通用字元。其編碼方式相容ASCII ,令原來處理 ASCII 字元的軟體無需或只作少量改動後,便可繼續使用。因此,它逐漸成為電子郵件網頁及其他儲存或傳送文字的應用中,優先採用的編碼。


Unicode->UTF-8

        U+0000~U+007F (1 byte,128個)    0+7bits                       

U+0080~U+07FF (2 byte,1920個) 110+5bits, 10+6bits

U+0800~U+FFFF (3 bytes,63488個) 1110+4bits, 10+6bits,10+6bits

例如:

"我"字的Unicode編碼為U+6621   01001111 01100000

按照UTF-8的編碼規則分解成 xxxx0100 xx111101 xx100000

所以"我"字的UTF-8編碼: E68891 11100100 10111101 10100000


參考資料:
http://zh.wikipedia.org/w/index.php?title=Unicode&variant=zh-tw

http://zh.wikipedia.org/w/index.php?title=UTF-8&variant=zh-tw

Linux作業系統下aMule工具配置實用技巧


發佈時間:2007.08.07 06:20 來源:賽迪網 作者:kit

aMule 無法登錄伺服器問題

配置:

下載伺服器列表進http://groups.google.com/group/muskycn/files 下載aMule-server.met-txt 去掉 .txt 尾碼,拷貝到 .aMule 目錄,覆蓋原文件。

ID最好設置為:[CHN][VeryCD]XXXX 比如:[CHN][VeryCD]muskycn

路由器映射端口:4662 4672 4665

如何更新伺服器列表

方法之一:

在“選項”—“伺服器”裏面,然後點擊第3項後面的“列表”,會打開寫字板,把以下的每日更新的伺服器列表拷貝到裏面:

http://www.srv1000.com/x1/server.met

http://emule.945.cn/server.met

http://www.edk-files.com/x1/server.met

方法之二:

推薦一個每天都更新的世界伺服器列表的網站:

http://ed2k.2x4u.de/list.html

網頁左下方有個 Home (server.met) 文件,點擊進入另外一個網頁,出現下面的內容:

connect list: server.met (add to eMule) 2.9kB (25 servers) best servers: server.met (add to eMule) 6.7kB (63 servers) all servers: server.met (add to eMule) 9.9kB (94 servers)

選擇最下面的一個,點擊(add to eMule)就可以把所有的伺服器自動添加到eMule當中。

在firefox中關聯ed2k到aMule

由於某些原因,可能在安裝amule之後,firefox並不能自動把ed2k地址關聯到amule.我們可以手動完成這一工作。

在firefox地址欄中輸入about:config 新建一個Boolean,名字為network.protocol-handler.external.ed2k,值為true 新建一個String,名字為network.protocol-handler.app.ed2k,值為/usr/bin/ed2k.amule或者 ed2k.amule 這樣就OK了。這時候點擊一個ed2k鏈結將會出現一個啟動相應應用程式的提示。點擊啟動後, 這個ed2k鏈結將會被加入下載隊列。前提是amule必須是已經開啟著的。

如果你想在點一個ed2k鏈結的時候不出現提示,那麼新建一個Boolean,名字 為network.protocol-handler.warn-external.ed2k,值為false update:ed2k.amule也可能為ed2k,具體可以在命令行下輸入ed2k,然後tab查看。



美國麻省理工學院(MIT)的研究人員首次示範透過無線供電來點亮燈泡,這種被命名為WiTricity的技術,是利用匹配天線(matched antennas)間的 磁耦合共振(magnetically coupled resonance)所達成。

該技術的發明人是MIT助理教授Marin Soljacic,他在去年秋天的美國物理學研究所舉行的產業化物理論壇(American Institute of Physics' Industrial Physics Forum)上首次發表此一技術。目前他的MIT團隊已經能透過隔著6英呎距離遙控點亮一盞60W燈泡的方式,來實際示範此一技術概念。

這個技術的關鍵在於非輻射性磁耦合(nonradiative magnetic coupling)的使用。「兩個相同頻率的共振物體會產生很強的相互耦合(couple with each other strongly);相反的,在非共振環境中的物體交互作用較弱。」Soljacic表示:「這種物理作用實現了非輻射性無線能量傳輸。」

目前磁耦合被應用在短距離範圍來對電池進行充電,如用於電動牙刷。但該技術要求充電中的設備非常靠近感應線圈,這是因為磁場能量會隨著距離變大會迅速消失;在傳統的磁感應中,距離只能透過增加磁場強度來增加。

而WiTricity技術是使用匹配共振天線(matched resonant antennas),可使磁耦合在幾英呎的距離內發生,而不需要增強磁場強度。有其他研究團隊曾示範長距離的射頻無線功率傳輸(radio- frequency wireless power transfers),但傳輸的功率僅幾微瓦(microwatts)到幾毫瓦(milliwatts)。

MIT的示範裝置包含直徑約3英呎的匹配銅線圈(matched cooper coils),以及與電源相連、工作頻率在兆赫(magahertz)範圍的傳輸線圈。接收線圈在非輻射性磁場內部發生共振,並以相同的頻率振盪,然後有效地利用磁感應來點亮燈泡。

Soljacic在燈泡示範中讓他的整個設計團隊成員站在發送和接收天線之間,而結果顯示共振天線上甚至在中間有物體相隔時也能保持耦合。 燈泡不受障礙物的影響繼續發光。該團隊表示,如果沒有匹配天線產生的共振,那麼必須要在傳輸線圈中使用100多倍的能量,才能實現傳統非輻射性磁感應。

該團隊下一步準備透過設計一種與嵌入在筆記型電腦底部的天線線圈相匹配的電腦室天線,來示範以無線方式為筆記型電腦供電。這個團隊不僅認為該技術能夠提供足夠的電源來為筆記型電腦充電,也預期該技術甚至能不需要電池、直接為筆記型電腦供電。

這項研究計畫受到美國陸軍研究辦公室(Army Research Office)、MIT陸軍奈米技術研究所(ISN)、美國國家科學基金會(NSF),以及美國能源部(Department of Energy)的贊助。Soljacic的團隊成員包括兩位教授Peter Fisher和John Joannopoulos (現任ISN總監),以及三位學生Andre Kurs、Aristeidis Karalis和Robert Moffatt。

(參考原文:Wireless energy transfer turns on bulb in MIT demo)

(R. Colin Johnson)


Jerry::無線供電是非常重要的技術躍進,在GUNDAM SEED Destiny中有一利用無線電波為impulse鋼彈充電的橋段,當時覺得很扯,現在看來似乎並不是不可能!Ubiquitous Network來臨之日似乎不遠矣…

Blogger Templates by Blog Forum