5』的ascii碼和字元『0』的ascii碼傳送出去,即是0x35,0x30 。當我們按16進製制傳送50 時,這時50位乙個數即0x50。這就是為什麼按16進製制傳送的效率要高於ascii碼的效率。從中我們也可以看出計算機底層傳送資料是乙個個數。
當我們接受的時候,我們同樣也是接受到乙個的數。當我們接受到0x35,0x30.如果我們按ascii接收的話,就會變成50 。如果我們按16進製制接收的話就是0x35,0x30.得到兩個數。
注意:串列埠和網口接收回來,當你用char 型別的buf去接收的時候,其實已經進行一次轉換了。這是它的十進位制範圍是-128~127。如果我們要將其變成無符號的數就要用byte型別的buf去接收,或者用char接收,強制轉化為unsigned char型別。這樣的它的十進位制範圍就變成了0~255。這樣你就可以用多個buf 組成16,32位等資料了。
最後 總結
計算機底層傳送資料是乙個個數。接收來之後,要我們自己按照自己的方式轉換。
常見的轉換的函式用 itoa strtoul strtol atoi atof。多個位元組轉化要使用移位,取反等操作。
QT串列埠程式已16進製制接受和傳送資料
以16進製制接受資料 讀取串列埠緩衝區的所有資料給臨時變數temp qbytearray temp mycom readall qdatastream out temp,qiodevice readwrite 將位元組陣列讀入 while out.atend ui textbrowser inser...
網口與串列埠的區別
串列埠有兩種 1.pc上的com口 com口即序列通訊埠。微機上的com口多為9針,最大速率115200bps。通常用於連線滑鼠 串列埠 及通訊裝置 如連線外接式modem進行資料通訊 等。但目前主流的主機板一般都只帶1個串列埠,甚至不帶。機箱後面,梯形的,兩排,一排5個孔,一排4個孔 一般有兩個,...
51串列埠傳送資料的格式
序列口控制暫存器scon sm0 sm1 序列口工作方式控制位 sm0 sm1 工作方式 功能 波特率 00 方式0 同步移位暫存器 fosc 12 01 方式1 8位uart 可變 t1溢位率 10 方式2 9位uart fosc 64或fosc 32 11 方式3 9位uart 可變 t1溢位率...