출처
컴퓨터에서 32 bit 가 뭐고 64 bit 가 뭔가 ?
먼저 memory 에 대해서 말해보겠다
Register
메모리가 값을 가지고 있을 때, 주소를 가진다.
네 가지 숫자를 가진다면 접근하기 위해서 네 개의 주소가 필요하다.
이 때 cpu 는 register 에 주소를 저장하여 메모리 주소를 찾아간다.
이게 2bit 면 2의 2승=4 가지의 주소를 가진다.
즉, Register 의 bit 수 만큼 CPU가 메모리에 접근가능한 수가 증가한다.
16 bit register 는 2의 20 승 => 1MB 메모리 접근 (limit)
32 bit register 는 2의 32 승은 => 4GB 메모리 접근 가능하다는 것
메모리 제한은 CPU의 register 때문에 온다.
Instruction set
은 cpu 에서 어떤 작업을 수행할 때 지시하는 code 다
add, decrement, loop 등을 코드값 1000, 1001, 1100 등으로 나타낸다
다른 CPU 간에는 instruction set 이 호환되지 않는다, 가령, Intel 8086 과 Motorola 68000 간은
마치 영어와 프랑스 어간에 이해가 안되는 것 처럼 호환이 안된다고 할 수 있다.
Intel 8086 은 16 bit 이다
80386 은 32 bit register 와 32 bit instruction set 을 가진다. (내부적으로 16bit instruction set도 호환된다)
Pentium 도 32bit 다
Itanium 는 완전히 다른 구조를 가진다.
(IA64 : Intel Architecture 64)
64 bit register 와 64bit instruction set 을 가진다.
그러나 64 bit instruction set 은 32 bit 와 호환되지 않는다.
여기서 프로그램 호환 문제가 있으니,
인텔이 별도의 번역하는 device 를 추가해서 32 bit instruction set 으로 호환시켜 줄 수 있도록 한다.
IA32 는 Intel Architecture 32 다.
X86 도 32 bit
IA64 는 Intel Architecture 64 다
X64 도 64 bit
'Computing' 카테고리의 다른 글
CPU 아키텍쳐를 알아보자 (0) | 2014.10.23 |
---|