Creative Commons License

Software Dev

프로그래밍기본
객체지향
프로젝트관리
알고리즘
데이타베이스

소프트웨어 개발에 필수적이고 필요한 주제에 대한 강의 및 공유

.

프로그래밍기본

닷넷 기반 개발도 결국 소프트웨어 개발입니다. 소프트웨어 개발을 위한 기본기를 다룹니다

정수 데이터의 표현 방식

작성자 : 박종명
최초 작성일 : 2008-05-07 (수요일)
최종 수정일 : 2008-05-07 (수요일)
조회 수 : 6977

이제 컴퓨터가 정수 데이터를 표현하는 방식에 대해 알아 봅니다. 
 
* 데이터
컴퓨터가 표현 하는 모든 데이터는 2진수로 표현되는 것을 알고 있습니다. 이때 데이터란 정수나 실수처럼 수 일수도 있고 문자, 사운드, 동영상 등 컴퓨터가 표현하는 모든 것을 의미 합니다.  현재 이렇게 글을 작성하고 있는 것도 우리들 눈에는 문자로 보이지만 컴퓨터는 1 과 0 의 조합으로 인식합니다.

* 데이터 표현 단위
컴퓨터가 데이터를 나타내는 최소 단위는 비트입니다. 이 비트는 0 과 1 중 한 값을 저장할 수 있는 메모리 공간입니다.
이 비트들이 모여 바이트를 이루며 바이트가 모여 Kbyte 가 되며 Mbyte, Gbyte, 가 됩니다.
8 bit -> 1 byte 입니다. 아래는 8 bit(1byte) 메모리에 숫자 7이 저장된 모습입니다



1 비트에는 0 또는 1 을 표현할 수 있습니다. 이 말은 1 비트로 표현 가능한 수가 최대 2가지란 말이 됩니다.
1 + 1 비트, 즉 2 비트가 표현 할 수 있는 최대 가지 수는 ( 2 * 2) = 4 가지가 됩니다. 이와 같이 N 비트로 표현
할 수 있는 최대 데이터 가지 수는 2n 개가 됨을 알 수 있습니다

참고로 비트는 정보를 표현하는 최소 단위라고 하며 바이트는 문자를 나타내는 최소 단위라고 합니다 
 
 
* 컴퓨터의 정수 표현 방식
정수란 0을 포함한 음과 양의 소수가 아닌 수를 의미합니다.

1. 양의 정수 표현 방식
닷넷에서의 대표적인 정수는 short 와 int 가 있습니다. 각각 2byte, 4byte 로 정수를 저장합니다
단, 모든 수의 가장 왼쪽 비트는 부호 저장용으로 사용됩니다. 이를 부호 비트라 합니다 (0 : 양수 , 1: 음수)
이 부호 비트를 MSB(Most Significant Bit) 라고 합니다
아래는 short 형 수 15 가 저장된 메모리 구조입니다 ( 노란색 비트는 부호비트 입니다)



2. 음의 정수 표현 방식
음수를 표현 할 때는 단순히 부호비트만 변경하면 되는 것이 아닙니다. 수학적으로 음수는 양수의 반대되는 값 ,
즉 양수N + 음수N = 0 이 되면 음수가 되는 것입니다. 컴퓨터는 이런 음수를 양수의 2의 보수로 표현합니다.
(물론 음수의 2의 보수는 다시 양수가 됩니다) 2의 보수 구하는 식 => 1의 보수 구하기 + 1 더하기 위의 15의 2의
보수를 구해 보겠습니다

∵Commented by 이창훈 at 2011-01-09 오전 12:14:07  
12번째줄에 "2n"이 아니라, "2^n" 아닙니까?
∵Commented by 박종명 at 2014-06-25 오후 4:27:04  
맞습니다. 2의 n승입니다.
위즈윅 버그로, 글 수정이 안되어 원문 수정을 못하네요 ^^;
문맥상 n승임을 알 수 있어, 원본 수정 포기합니다
이름
비밀번호
홈페이지
YI <- 왼쪽의 문자를 오른쪽 박스에 똑같이 입력해 주세요