본문 바로가기
개발/자바

[자바] 16진수,8진수, 2진수 표현하기

by darksilber 2011. 7. 5.
반응형

[출처] [자바]16진수 , 8진수 , 2진수 표현하기|작성자 신영철



16진수 , 8진수 , 2진수 표현하기

이번에는 자바에서 일반적으로 사용하는 10진수 ( Decimal ) 외에 16진수 ( Hexadecimal ) 8진수 ( Octal ) 2진수 ( Binary ) 를 표현하는 법을 알아보겠습니다.

( 15 라는 숫자를 각 진수로 바꾸어 보는 예제를 메인으로 하겠습니다. )

  1. 16진수 ( Hexadecimal )

    • 16진수는 0~9 외에도 a b c d e f 가 존재하기때문에 10진수로는 표현이 안됩니다. 그러므로 16진수라고 선언시 표현을 해줘야 합니다.
    • 사용법은 숫자 0 뒤에 알파벳 x 를 붙여서 표현합니다.
      0x , 0X 둘다 가능합니다.
      15를 16진수로 표현하기 위해서는 0xf 또는 0Xf 로 표현을 하면 됩니다.
  2. 8진수 ( Octal )

    • 8진수는 0 - 7 까지의 숫자를 표현합니다. 8부터는 한자리를 올려줘야합니다.
    • 사용법은 십진수의 사용법과 같으나 가장앞에 0을 붙여주어서 표현합니다.
      위의 15를 표현한다고 하면 15를 8진수로 바꾸면 17입니다.
      그러면 실제 사용할때는
      int i = 017 ;
      로 사용하시면 됩니다.

      만약에 8이상의 수를 8진수에서 사용하면 컴파일에서 에러가 납니다.
      int i = 08 ;
      이런식으로 사용한다면 , integer number too large : 08 이라는 컴파일 에러가 납니다.
  3. 2진수 ( Binary )

    • 2진수는 0 , 1 로 숫자를 표현합니다.
    • 사용법은 자바상에서는 2진수를 16진수나 , 8진수처럼 표현하는 방법은 없습니다. ( 제가 모르는것일수도 있으니 확실한건 아닙니다. )
      그 대신
      toBinaryString () 이라는 static 메소드를 사용하면 표현할수있습니다.
      15를 2진수로 표현하기 위해서는
      Integer.toBinaryString ( 15 ) ; 식으로 사용하시면 됩니다.
      static 메소드 이므로 객체선언없이 바로 사용하시면 되구 , return 타입은 String 형입니다.

      Integer 클래스에는 toBinaryString () 외에도 toHexString () , toOctalString () 메소드도 있기 때문에 16진수 8진수로도 변환이 가능합니다. ( return 타입은 String 입니다. )

       

반응형

'개발 > 자바' 카테고리의 다른 글

[자바] StringTokenizer와 Split 차이  (1) 2011.12.20
[Java]Convert byte to unsigned byte  (0) 2011.07.08
[JAVA]LittleEndian 과 BigEndian  (0) 2011.07.08
[자바]비트 연산자와 시프트 연산자  (0) 2011.07.05
ByteBuffer 바이트버퍼  (0) 2011.06.22

댓글