| 컴퓨터 아키텍처 비트 너비 |
|---|
| 비트 |
| 응용 프로그램 |
| 이진 부동소수점 정밀도 |
| 십진 부동소수점 정밀도 |
32비트 컴퓨팅(32-bit computing)은 중앙 처리 장치, 주기억장치, 그리고 그 밖의 주요 구성 요소들이 32비트 단위의 데이터로 작동하는 컴퓨터 구조를 의미한다. 더 작은 비트 폭과 비교하여, 32비트 컴퓨터는 복잡한 계산을 더 효율적으로 수행하며 클럭 사이클당 더 많은 데이터를 처리할 수 있다. 1980년대부터 2006년경까지 일반적인 32비트 개인용 컴퓨터는 32비트 주소 버스를 갖추어 최대 4 GiB의 RAM에 접근할 수 있었다.
32비트 설계는 전자 컴퓨팅의 초기 시절부터 실험적인 시스템과 이후의 대형 메인프레임 및 미니컴퓨터 시스템에 사용되었다. 최초의 하이브리드 16/32비트 마이크로프로세서인 모토로라 68000은 1970년대 후반에 도입되었으며, 초기 매킨토시와 같은 시스템에 사용되었다. HP FOCUS, 모토로라 68020, 인텔 80386과 같은 완전한 32비트 마이크로프로세서는 1980년대 초중반에 출시되었으며 1990년대 초반에는 주류가 되었다. 이러한 세대의 프로세서는 월드 와이드 웹의 대중화를 가능하게 했다. 32비트 아키텍처는 여전히 특정 응용 분야에서 널리 사용되지만, 2000년대 중반부터 PC, 스마트폰, 서버는 X86-64와 같은 아키텍처를 사용하여 64비트로 전환되었으며, 보급형 컴퓨터의 설치 메모리 용량은 종종 32비트 주소 제한인 4 GiB를 초과한다.
32비트 레지스터는 232개의 서로 다른 값을 저장할 수 있다. 32비트 내에 저장할 수 있는 정수 값의 범위는 사용된 표현 방식에 따라 달라진다. 가장 흔한 두 가지 표현 방식에서, 그 범위는 (unsigned) 이진수로 표현할 경우 0부터 4,294,967,295 (232 − 1)까지이며, 2의 보수로 표현할 경우 −2,147,483,648 (−231)부터 2,147,483,647 (231 − 1)까지이다.
이는 32비트 논리 주소 또는 가상 주소를 가진 프로세서가 최대 4 GiB의 바이트 단위 주소 지정 가능 주소 공간에 직접 접근할 수 있음을 의미한다. 32비트 물리 주소를 가진 프로세서는 최대 4 GiB의 바이트 단위 주소 지정 가능 주기억장치에 직접 접근할 수 있다. 32비트 프로세서가 항상 32비트 물리 주소를 사용하는 것은 아니며, 더 많거나 적은 주소를 사용하는 구현체도 존재한다.

1948년, 최초의 프로그램 내장식 전자 컴퓨터인 맨체스터 베이비는 32비트 아키텍처를 사용했으나, 이는 단지 개념 증명 단계였으며 실질적인 용량은 거의 없었다. 이 컴퓨터는 윌리엄스관에 32개의 32비트 RAM 워드만을 저장할 수 있었고, 덧셈 연산 없이 뺄셈 연산만 수행할 수 있었다.
32비트 아키텍처의 초기 수십 년(1960년대~1980년대) 동안에는 메모리, 기타 디지털 전자 회로 및 배선 비용이 매우 비쌌다. 구형 32비트 프로세서 제품군들은 비용 절감을 위해 많은 절충과 제한을 두곤 했다. 여기에는 16비트 ALU를 사용하거나 32비트보다 좁은 버스를 사용하여 메모리 크기를 제한하거나 연산 속도를 줄이는 방식이 포함될 수 있다.
이러한 초기 프로세서들은 32비트 레지스터와 32비트 양을 조작하기 위한 명령어를 갖추고 있었기에 여전히 32비트로 분류된다. 예를 들어, IBM 시스템/360 모델 30은 8비트 ALU, 8비트 내부 데이터 경로, 8비트 메모리 경로를 가졌고, 원래의 모토로라 68000은 16비트 데이터 ALU와 16비트 외부 데이터 버스를 가졌으나 32비트 레지스터와 32비트 지향 명령어 집합을 가지고 있었다. 68000 설계는 때때로 16/32비트로 지칭되기도 했다.
일부 최신 32비트 설계는 32비트보다 넓은 외부 버스 폭을 지원한다. 예를 들어, 펜티엄 프로 프로세서는 32비트 레지스터와 32비트 양을 조작하는 명령어를 가진 32비트 프로세서이지만, 36비트 외부 주소 버스를 통해 4 GB 이상의 메모리에 접근할 수 있고, 64비트 외부 데이터 버스를 통해 명령어와 데이터를 더 효율적으로 프리페치할 수 있다. 마찬가지로, 파워PC 604는 64비트 외부 데이터 버스를 가진 32비트 기계이다.
범용 컴퓨팅에 사용된 주요 32비트 명령어 집합 구조로는 IBM 시스템/360, IBM 시스템/370 (24비트 주소 지정), System/370-XA, ESA/370, ESA/390 (31비트 주소 지정), DEC VAX, NS320xx, 모토로라 68000 시리즈 (처음 두 모델은 24비트 주소 지정), 인텔 IA-32 32비트 버전 X86 아키텍처, 그리고 ARM 아키텍처의 32비트 버전, SPARC, MIPS, 파워PC, PA-RISC 아키텍처가 있다. 임베디드 컴퓨팅에 사용되는 32비트 명령어 집합 구조로는 68000 시리즈와 ColdFire, x86, ARM, MIPS, 파워PC, Infineon TriCore 아키텍처가 포함된다.
X86 아키텍처에서 32비트 응용 프로그램은 일반적으로 80386 이후 칩에서 가능한 32비트 선형 주소 공간을 사용한다. 이 용어는 MS-DOS, Windows, OS/2가 원래 8088/8086 또는 80286과 같은 16비트 마이크로프로세서용으로 작성되었기 때문에 생겨났다. 당시에는 세그먼트화된 주소 공간을 사용하여 프로그램이 64 킬로바이트 이상의 메모리에 접근하려면 세그먼트 간을 전환해야 했고, 이로 인해 성능이 저하되었다. 프로그래밍 시 세그먼트를 사용하는 것은 복잡하며, 어셈블리 언어나 고급 언어에서 특수한 키워드 또는 메모리 모델을 요구했다.
80386 및 후속 프로세서들은 80286의 16비트 세그먼트를 지원하며 32비트 주소 오프셋에 대해 해당 기술을 재사용한다. 만약 모든 32비트 세그먼트의 기준 주소를 0으로 설정하고 세그먼트 레지스터를 명시적으로 사용하지 않는다면, 세그먼트화 개념을 배제할 수 있으며 프로세서는 단순한 선형 32비트 주소 공간을 가진 것처럼 보인다. Windows나 OS/2와 같은 운영체제는 16비트(세그먼트화된) 프로그램과 32비트 프로그램을 모두 실행할 수 있는 기능을 제공한다. 전자는 하위 호환성을 위해 존재하며, 후자는 일반적으로 새로운 소프트웨어 개발을 위한 것이다.
32비트 디지털 이미지는 일반적으로 RGBA 색 공간을 의미하며, 각 픽셀은 적색, 녹색, 청색 및 투명도에 각각 8비트씩 사용한다. RGBE와 같은 다른 이미지 형식도 픽셀당 32비트를 사용한다.
디지털 이미지에서 32비트는 때때로 채널당 32비트(픽셀당 총 96비트)를 사용하는 하이 다이내믹 레인지 이미징 (HDR) 형식을 의미하기도 한다. 채널당 32비트 이미지는 SRGB 색 공간이 허용하는 것보다 더 정밀한 값을 표현하는 데 사용된다. 이러한 정밀도는 이미지를 편집할 때 더 많은 세부 정보를 유지하는 데 활용될 수 있다.
32비트 파일 형식은 각 기본 정보가 32비트(또는 4 바이트)로 정의되는 이진 파일 파일 형식이다. 이러한 형식의 예로는 Enhanced Metafile Format이 있다.