본문 바로가기

JAVA(CodeLatte강의)/기타

bit로 무엇을 할까?

[ bit란 데이터를 나타내는 최소한의 단위이다 ]

bit 1단위는 0과1로 표현 된다

2진수 또한 0과1로 구성되어 있다

2진수를 이용해 컴퓨터는

bit로 숫자를 표현한다

 

[ 1byte는 몇 bit로 구성돼있을까? ]

1byte크기는 9일때도 7일떄도 있었지만

지금은 1byte라하면 일반적으로 8bit라고 표현 한다

즉 8개의 bit가 모이면 1byte라고 표현하는 것이다

 

1byte는 

0000 0000 ~ 1111 1111 까지의 표현이 가능합니다.

그렇기 때문에 0부터 255까지 표현할수 있는 것입니다.

 

[ 그렇다면 JAVA에서 int에 저장된 숫자는 bit로 어떻게 표현될까? ]

 

 

 

public class Main
{
	pulbic static void main(String[] args)
    {
    	int number = 4;
    }
}

 

 

 

JAVA에서 int는 4byte를 기본으로 가지고 있습니다..

즉 8bit가 4개 입니다.

 

1byte에서 1을 표현하기위해서는

0000 0001 이라고 표현한다 마찬가지로

 

4byte에서는 

0000 0000 / 0000 0000 / 0000 0000 / 0000 0100 으로 표현 된다

 

[ 그런데 int number에 담기는값이 4가아니라 -4라면? ]

public class Main
{
	public static void main(String[] args)
    {
    	int number = -4;
    }
}

 

음수를 표현해야 하는 상황이 있기에

computer는 bit를 통해 음수를 나타내는 여러 표기법을 가지고 있다

그리고 JAVA에서는 부호화 표기법을 사용한다

 

[ 부호화 표기법 이란? ]

최상위 bit를 2진수를 통한 수표현이 아닌

부호를 결정하는데 사용한다

양수는 0 음수는 1 이다.

 

ex ) 4bit로 -4라는 값을 표기 한다면

=> 1100 입니다.

 

따라서 int number = -4;는 

bit로 이렇게 표현된다

1000 0000 / 0000 0000 / 0000 0000 /0000 0100

 

위의 int number = 4 의 최상위bit또한

0이 2^32 가 0개있다 가아닌

양수 이다 라는것을 표현하고 있었던 것이다.

 

 

'JAVA(CodeLatte강의) > 기타' 카테고리의 다른 글

실수는 어떻게 표현될까?  (0) 2021.08.21