matlab中ASCII碼轉化為字元(中文)

時間 2021-07-01 01:47:41

1樓:匿名使用者

這個是因為你對漢字的編碼不瞭解引起的。

對於gb2312的字元(就是我們平時所說的區位),一個漢字對應於兩個位元組。

每個位元組都是大於a0(十六進位制),

倘若,你的第一個位元組大於a0,而你的第二個位元組小於a0,那麼它應當不是漢字(僅僅對於gb2312),不知道你能否理解我說的。

如果真的發生這種情況(你的第一個位元組大於a0,而你的第二個位元組小於a0),那麼系統找不到一個漢字與它對應,極有可能顯示是兩個字元(ascii),第一個是就如你上面的?,第二個字元可能就是正常的ascii碼。

對於現在的gbk編碼是要求漢字每個位元組都超過80(十六進位制,對應於十進位制的128),當然有一些碼是沒有漢字對應的。

現在還有big5碼、萬國碼,現在的漢字編碼也複雜了。

哎。瞭解就行。

2樓:匿名使用者

使用char強制將一個十進位制數轉化為字元的時候,超過128的數都會顯示“?”

既然是十進位制數,怎麼會超過128呢?

3樓:匿名使用者

用abs() setstr() 兩個函式

如:abs(a)=32

setstr('32'=a)

應該懂了吧

matlab中怎樣把ascii碼轉換成字串

4樓:我不能變胖

如果是字元的話 直接int16(a)就能轉換 如果是數字 先num2str 再用int16轉

5樓:都希許夜蓉

用char函式

如:a=[97

9899]

b=char(a)

------執行結果:a=

979899b

=abc

ascii碼的構成規則是什么,ascii碼的構成規則是什麼

ascii碼英文全稱america standard code for information interchange,中文意思 美國資訊交換標準碼。它已被國際標準化組織 iso 定為國際標準,稱為iso 646標準。適用於所有拉丁文字字母,ascii碼有7位碼和8位碼兩種形式。ascii碼於196...

c 怎麼輸出ascii碼對應的字元

幸福不打祥 c 中有對應的公式 是電腦具體編號的一套 必須要先寫公式。先定義字元ch,輸入字元,在把字元強制轉換成整數就是該字元的ascii碼值,即int ch ascii是基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言。它是現今最通用的單位元組編碼系統,並等同於國際標準iso ...

如何用鍵盤按鍵對應的ascii碼值

鍵盤各鍵對應的ascii碼值 0x指16進位制,delete鍵的ascii碼值是0x2e,也即十進位制的46 0x1 滑鼠左鍵0x2 滑鼠右鍵0x3 cancel 鍵0x4 滑鼠中鍵0x8 backspace 鍵0x9 tab 鍵0xc clear 鍵0xd enter 鍵0x10 shift 鍵0...