1. 程式人生 > 其它 >Java 常量和進位制

Java 常量和進位制

常量

常量概述

​ 在程式執行的過程中其值不可以發生改變

變數: int a = 10 a = 20 (√)

常量: a = 10 a = 20 (×)

Java中常量分類

​ 字面值常量​ 自定義常量

常見常量形式

  • 字串常量 用雙引號括起來的內容 "Gerry"
  • 整數常量 所有整數 122 , 23
  • 小數常量 所有小數 12.56, 36.78
  • 字元常量 用單引號括起來的內容 ‘a’,’A’,’0’
  • 布林常量 較為特有,只有true和false
  • 空常量 null(陣列部分講解)

整數常量提供了4種表現形式

進位制概述 1~9 = 10

​ 進位制:就是進位制,是人們規定的一種進位方法。 對於任何一種進位制--X進位制,就表示某一位置上的數運算時是逢X進一位。二進位制就是逢二進一,八進位制是逢八進一,十進位制是逢十進一,十六進位制是逢十六進一。

  • 二進位制 二進位制的2 => 10
  • 八進位制 八進位制的8 = >10
  • 十進位制 十進位制的10 = > 10
  • 十六進位制 十六進位制的16 = > 10

不同進位制的資料組成

  • 二進位制 由0,1組成。以0b開頭
  • 八進位制 由0,1,…7組成。以0開頭
  • 十進位制 由0,1,…9組成。整數預設是十進位制的
  • 十六進位制 由0,1,…9,a,b,c,d,e,f(大小寫均可)。以0x開頭

進位制轉換

  • 其他進位制到十進位制 通過十進位制推出結論 把0b100, 0100, 0x100轉換成十進位制
  • 十進位制到其他進位制 通過十進位制推出結論 把47分別表示成二進位制,八進位制,十六進位制

進位制快速轉換

  • 十進位制和二進位制的快速轉換 8421碼 100轉成二進位制 101101轉成十進位制
  • 二進位制和八進位制,十六進位制如何轉換
  • 以十進位制作為橋樑
  • 二進位制到八進位制 3位組合 100110
  • 二進位制到十六進位制 4位組合 100110

有符號資料表示法

  • 在計算機內,有符號數有3種表示法:原碼、反碼和補碼。所有資料的運算都是採用補碼進行的。
  • 原碼 就是二進位制定點表示法,即最高位為符號位,“0”表示正,“1”表示負,其餘位表示數值的大小。
  • 反碼 正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
  • 補碼 正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。

 

 

總結:

十進位制變二進位制:原碼--反碼--加一(補碼);

二進位制變十進位制:減一--反碼--原碼。

課後練習題

有符號資料練習 已知某數X的原碼為10110100B,試求X的補碼和反碼。 已知某數X的補碼11101110B,試求其原碼。

求11110111的十進位制數