日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

爱上进制转换练习

發布時間:2025/3/12 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 爱上进制转换练习 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引言

對于可能接觸到通訊行業或是物聯網的開發工作者,一般會面對十進制、二進制、十六進制的轉換工作,不僅僅是體現在代碼上,有時候也需要用肉眼來進行快速的轉化,以獲取協議指令中的信息。

今天通過簡單的整理,特此將這三種轉化整理成一張表,并配上三個單獨的執行程序。作為日后記憶的參考;而三個可執行程序是為了每天進行練習。

進制對照表

其中紅色框代表比較有特點的二進制,綠色框代表十六進制和十進制完全相同的數。

練習程序

二進制識讀練習

代碼中,使用一個隨機數,隨機產生0-15之間任意的數,并格式化為4比特位的二進制,兩秒輸出一個,十個一換行,無限循環。大家可以根據控制臺輸出的二進制數快速的在心中說出對應的十六進制或者十進制的數字,這樣長期練習應該可以把三種進制之間的轉化玩的很溜。

/*** 死循環輸出0-15之間任意的數字,然后顯示二進制,在腦海中回想對應的16或10進制。* * @author mht* @date 2018年10月30日上午10:28:25*/ public class 二進制練習 {public static final String[] ZEROS = { "", "0", "00", "000" };public static void main(String[] args) throws InterruptedException {Random rdm = new Random();int lineCount = 0;for (;;) {int out = rdm.nextInt(16);TimeUnit.SECONDS.sleep(2);if (lineCount == 10) {System.out.println();lineCount = 0;}System.out.print(format4Bits(out));lineCount++;}}private static String format4Bits(Integer unformatNum) {if (unformatNum == null)throw new InvalidParameterException("參數異常!");String binaryString = Integer.toBinaryString(unformatNum);int diff = 4 - binaryString.length();return ZEROS[diff] + binaryString + " ";}}

?十六進制識讀練習

和二進制識讀練習類似,控制臺會隨機輸出一個0-15之間的任意數,轉化為十六進制輸出,我們需要在心中快速念出對應的二進制和十進制的數字。勤加練習,相信應該可以找到一定的技巧。

/*** 死循環輸出0-15之間任意的數字,然后顯示十六進制,在腦海中回想對應的2或10進制。* @author mht* @date 2018年10月30日上午10:29:52*/ public class 十六進制練習 {public static void main(String[] args) throws InterruptedException {Random rdm = new Random();int count = 0;for (;;) {int out = rdm.nextInt(16);TimeUnit.SECONDS.sleep(2);if (count == 10) {System.out.println();count = 0;}System.out.print(Integer.toHexString(out).toUpperCase() + " ");count++;}} }

十進制識讀練習?

/*** 死循環輸出0-15之間任意的數字,然后顯示,在腦海中回想對應的16或2進制。* @author mht* @date 2018年10月30日上午10:29:35*/ public class 十進制練習 {public static void main(String[] args) throws InterruptedException {Random rdm = new Random();int count = 0;for (;;) {int out = rdm.nextInt(16);TimeUnit.SECONDS.sleep(2);if (count == 10) {System.out.println();count = 0;}System.out.print(out + " ");count++;}} }

學習感想

此練習最好每天堅持5到10分鐘,堅持一周到兩周,效果應該會體現出來。

隨著對進制的理解,我們應該逐漸地不再懼怕進制的轉化和運算。

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的爱上进制转换练习的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。