본문 바로가기

BackEnd/C

진수와 진수변환

반응형

 

 

1) 컴퓨터의 데이터 표현 및 처리방식

 

내부적으로 컴퓨터는 0과 1을 이용해서 다양한 데이터를 표현하기도 하고 처리(연산)하기도 한다.

 

따라서 컴퓨터의 메모리에는 다음과 같은 형태의 데이터가 저장이 된다.

 

10110110 11010011 

 

그렇다면 이 데이터의 종류,정체는 무엇일까? 정수일까?실수일까?문자일까?

 

여기에 답을 할 수가 없다. 왜냐하면 저장되어 있는 2진수 데이터를 어떻게 해석하느냐에 따라서 

 

그 데이터의 종류가 결정되기 때문이다.

 

다시 말해서 위 데이터는 정수,실수,문자가 모두 될 수 있다. 

 

그래서 결론적으로 컴퓨터가 위 2진수 데이터를 가지고 정수,실수,문자등 으로 인식할 수 있도록 하

 

약속과 방식이 있다. 우리는 이러한 표현 방식을 알아야 한다.

 

 

 

 

 

 

2) N진수로 표현할 수 있는것들

 

숫자는 숫자이기 이전에 기호이다.

 

위와 같은 숫자 기호+ 알파벳 기호등을 통해 표현할 수 있다.

 

컴퓨터는 데이터를 표현하는데 있어서 0과 1만을 사용한다.

 

이것이 바로 2진수의 데이터 표현 방식이다.

 

즉 2진수는 두 개의 기호 0과 1을 다양한 형태로 조합해서 데이터를 표현한다.

 

10진수는 10개의 기호를 조합해서 데이터를 표현한다.

 

N진수 데이터는 N개의 기호를 조합해서 데이터를 표현한다.

 

그리고 2진수 말고도 또한 N진수 데이터를 가지고도 정수,실수,문자등 으로 인식할 수 있다.

 

 

3) 2진수, 10진수, 16진수를 이용해서 양의 정수 표현해보기

 

 

 

https://jowoon252.tistory.com/7

 

4) 진수 변환

 

               

 

 

 

5) 8진수와 16진수로 숫자표현하기

 

1
2
3
4
5
6
7
8
9
10
11
12
int main(void)
{
    int n8  = 010;    //  8진수 숫자 표현, 0을 앞에붙임
    int n10 = 10;     // 10진수 숫자 표현
    int n16 = 0x10;   // 16진수 숫자 표현, 0x를 앞에 붙임
    //10진수로 저장을 하건 16진수로 저장을 하건, 메모리상에는 2진수의 형태로 저장된다. 
    printf(" 8진수 초기화 변수 값: %d \n", n8);//%d는10진수의 형태로 출력
    printf("10진수 초기화 변수 값: %d \n", n10);
    printf("16진수 초기화 변수 값: %d \n", n16);
    //%o와 %x를 사용하여 출력하면 8진수와 16진수의 형태로 출력된다. 
    return 0;
}
cs

 

1
2
3
 8진수 초기화 변수 값: 8
10진수 초기화 변수 값: 10
16진수 초기화 변수 값: 16
cs

 

https://darksilber.tistory.com/21

 

반응형

'BackEnd > C' 카테고리의 다른 글

정수와 실수의 표현 방식  (0) 2018.12.04
데이터 표현의 단위  (0) 2018.12.04
메모리 공간의 할당과 활용  (0) 2018.12.04
서식문자(Conversion specifier)  (0) 2018.12.04
이스케이프 시퀀스(특수문자)  (0) 2018.12.04