상세 컨텐츠

본문 제목

2진수를 10진수로 / 10진수를 2진수로 바꾸는 작업

개발

by Pyidros 2023. 7. 4. 10:12

본문

2진수를 10진수로 10진수를 2진수로 바꾸는 작업은 컴퓨터 과학에서 자주 사용되는 기본적인 변환 방법이다.

 

1. 2진수를 10진수로 바꾸는 방법 :

  - 이 방법은 각 자릿수에 해당하는 2의 거듭제곱 값을 모두 더하는 것입니다.

  - 예를 들어 , 2진수 101을 10준수 바꾸려면 다음과 같이 계산해야 합니다.

  -  1*(2^2) + 0*(2*1) + 1*(2^0) = 4 + 0 + 1 = 5

2. 10진수를 2진수로 바꾸는 방법 : 

  - 이 방법은 10진수를 2로 계속 나누고, 나머지 값을 계속 기록하다가 10진수가 0이 되면 나머지를 역순으로 

    나열하는 것.

  - 예를 들어, 10진수 5를 2진수로 바꾸려면 다음과 같이 계산해야 합니다.

  - 5 / 2 = 2...1

  - 2 / 2 = 1...0

  - 1 / 2 = 0...1

  - 따라서 나머지를 역순으로 나열하면 101입니다.

 

위에서 설명한 것은 수학적인 방법이며, 실제 프로그래밍에서는 기본적으로 제공되는 메소드를 이용하여 이러한 변환을 수행할수 있습니다. 예를 들어, Java 에서는 'Integer.parseInt()' 와 'Integer.toBinaryString()'을 이용하면 됩니다.

 

Integer.parseInt 메소드는 문자열을 정수(int)로 변환하는데 사용되며, 주로 두 가지 버전이 있습니다:

  1. Integer.parseInt(String s) : 이 버전은 문자열 s를 10진수 정수로 변환합니다. 문자열 s는 숫자를 나타내야 하며, 그렇지 않은 경우 NumberFormatException이 발생합니다. 예를 들어, Integer.parseInt("123")는 정수 123을 반환합니다.
  2. Integer.parseInt(String s, int radix) : 이 버전은 주어진 radix (진법)를 사용하여 문자열 s를 정수로 변환합니다. radix는 2에서 36 사이의 값을 가질 수 있으며, 문자열 s는 해당 진법의 숫자를 나타내야 합니다. 예를 들어, Integer.parseInt("1101", 2)는 이진수 문자열 "1101"을 정수 13으로 변환합니다.

Java에서 10진수를 2진수로 변환하는 방법은 Integer 클래스의 toBinaryString(int i) 메소드를 사용하면 됩니다. 이 메소드는 입력된 정수를 2진수 형태의 문자열로 변환합니다.

 

int num = 13;

String binaryStr = Integer.toBinaryString(num)

System.out println(binaryStr);

 

이 코드는 10진수 13을 2진수 문자열 "1101"로 변환하고 이를 출력합니다.

관련글 더보기