Appia의 IT세상

[JAVA 자바 03] 자바(JAVA) 변수(Variable)와 2진수, 8진수, 16진수 본문

Programming/JAVA

[JAVA 자바 03] 자바(JAVA) 변수(Variable)와 2진수, 8진수, 16진수

Appia 2020. 12. 29. 07:23
반응형

[JAVA 자바 03] 자바(JAVA) 변수(Variable)와 2진수, 8진수, 16진수

[JAVA 자바 03] 자바(JAVA) 변수(Variable)와 2진수, 8진수, 16진수

이전 포스팅에서는 이클립스를 처음 시작하였을 경우, 어떻게 Project를 생성하고, Class를 생성하여 Hello world와 같은 Command를 콘솔에 출력하는 방법에 대해서 간단히 살펴봤습니다. 이번 포스팅 부터는 보다 프로그래밍에 근접해서 접근을 해볼까 합니다. 그래서 이번 포스팅에서는 변수에, 컴퓨터에 저장되는 데이터의 진수들에 대해서 살펴볼까 합니다. 

 

변수의 의미

프로그래밍 언어에서 가장 많이 사용되는 단어가 변수가 아닐까 라는 생각을 해봅니다. 변수는 즉, 값이 변할 수 있는 수를 말합니다. 그럼 간단히 다음과 같은 방식을 살펴보겠습니다. 

(데이터 타입) 변수 = 값 ;

흔히 위와 같은 형태로 변수를 선언을 하게 됩니다. 이때, '='을 통해서 변수에 값을 할당하는 것입니다. 쉽게 이야기를 하면 변수에 값을 넣어준다는 것이라고 생각하시면 됩니다. 즉, 변수라는 저장소에 값을 넣어서 이 변수에 대해서 다른 곳에서 사용할 때 앞선 입력된 값을 사용하는 것을 의미합니다. 

 

변수 이름의 명명 규칙 

  • 변수의 이름은 알파벳, 숫자, _, $로 구성 
  • 대소문자 구별 
  • 숫자로 사용 못함 
  • 이름 사이에 공백 사용하지 못함. 
  •  

2진법, 8진법, 10진법, 16진법 

흔히 컴퓨터가 사용하는 저장하고 읽는 데이터들을 보면, On/Off로 구성되어 있는 2진수입니다. 즉, 사용자가 10이라는 숫자를 입력하여 저장하기 원하다고 할 때, 이 부분들은 각 2진수로 변환되어 컴퓨터에 저장이 됩니다. 물론, 2진수를 가장 쉽게 표현하면, 0과 1입니다. 즉 다음과 같은 형태로 저장이 되거나, 읽을 수 있습니다. 

 

10진수

2진수

10

1010

이와 같이 10진수를 2진수로 표현하면 1010이 됩니다. 여기서 각 하나의 자리를 bit라고 합니다. 이렇게 10진수를 2진법으로 변화하여 컴퓨터는 저장하고 읽게 됩니다. 그럼, 여기에서 16진법에 대해서 더불어 이야기를 해볼까 합니다. 실제 개발을 하다보면, 매우 큰 값들에 대해서 사용을 하게 됩니다. 특히 IPv6의 주소와 같은 경우에는 단순 숫자가 아닌 알파벳 또한 표현이 되어 있습니다. 만약 제가 78912351324라는 숫자를 사용한다고 가정하겠습니다. 이 부분을 사용하는데 매우 크기 때문에, 사용자가 이 부분을 표현하는데에는 매우 힘들 수 있습니다. 그래서 사용자가 보다 쉽게 사용할 수 있게 16진법을 활용하여 다음 숫자를 125f8aec5c와 같은 형태로 표현할 수 있게 제공을 하고 있습니다. 그럼 16진법을 간단히 다음과 같이 살펴보겠습니다. 

10진수

16진수

2진수

9

9

1001

10

a

1010

11

b

1011

12

c

1100

13

d

1101

14

e

1110

15

f

1111

16

10

1 1111

즉, 2진수 4bit를 하나의 숫자로 표현을 해주는 것입니다. 그럼 여기에서 8진수에 대해서도 이야기를 해보갰습니다. 8진수는 많이 사용되지는 않습니다. 하지만, 3bit를 하나의 숫자로 표현을 해주는 것입니다. 그럼 다음 예시를 살펴보겠습니다. 

10진수

8진수

2진수

5

5

0101

6

6

0110

7

7

0101

8

10

1000

그럼 위의 부분을 바탕으로 코드에서 각 진수에 대해서 사용하는 방법에 대해서 살펴보겠습니다. 

진수

Prefix

2진수

0B

8진수

0

10진수

(없음)

16진수

0X

위와 같이 숫앞에 다음과 같은 prefix를 붙여 주시면 됩니다. 그럼 다음 코드를 예시로 보겠습니다. 

package basic_tutorial;

public class BasicT_002 {
	public static void main(String[] args) {
		int numDec= 10; 		//10진수
		int numBin = 0B1010;		//2진수
		int numOct = 012;  		//8진수
		int numHex = 0XA;		//16진수
		
		System.out.println(numDec);
		System.out.println(numBin);
		System.out.println(numOct);
		System.out.println(numHex);			
			
	}

}

위의 부분을 실행하면 다음과 같은 결과가 나타납니다. 위에서 살펴본 변수에 대해서 여기에서도 사용이 됩니다. numDec = 10;의 경우 변수 numDec에 10을 할당하라는 명령어로 보시면 됩니다. 

10
10
10
10

위와 같이 각 숫자가 지칭하는 10진수 10이 출력이 됩니다. 

[JAVA 자바 02] 자바(JAVA) IDE인 이클립스(eclipse) 처음시작하기

 

이번 포스팅에서는 [JAVA 자바 03] 자바(JAVA) 변수(Variable)와 2진수, 8진수, 16진수라는 주제로 간단히 변수라는 것은 무엇이고, 각 2진수, 10진수, 8진수, 16진수에 대해서 간단히 살펴봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 

반응형
Comments