프로세서가 8비트인지 어떻게 확인합니까?16비트 또는 32비트

StackOverflow https://stackoverflow.com/questions/1434606

  •  07-07-2019
  •  | 
  •  

문제

주소 버스의 크기에 따라 결정됩니까?그렇다면 8086은 20비트 프로세서였습니까?그렇지 않다면 프로세서에 8비트, 16비트, 32비트와 같은 비트 수를 할당하는 기준은 무엇입니까?

도움이 되었습니까?

해결책

잘 정의되지 않았습니다. XTOFL이 지적했듯이, 그것은 계산의 원자 단위의 크기입니다 (초기 컴퓨터에서는 항상 "레지스터"와 동의어는 아닙니다). 따라서 PDP-10은 36 비트 기계, 8080은 8 비트, IBM 360 또는 Intel 80386은 "32 비트"입니다.

그러나 예외가 있습니다. Motorola 68000 및 68010 CPU는 32 비트 레지스터 세트를 구현했지만 대부분 16 비트 내부 아키텍처 위에 마이크로 코드를 통해 수행했습니다. 그들은 일반적으로 당시 "16 비트"CPU로 판매되었습니다.

주소 버스의 크기는 거의 정의 요인이 아닙니다. 모든 성공적인 "8 비트"CPU는 예를 들어 16 비트 주소 지정을 구현했습니다 (예 : 종종 홀수 해킹을 통해 단일 주소 레지스터가 부족하여 CF 6502의 간접 주소 지정 모드 또는 Z80의 H/L 레지스터). 그리고 8086은 당신이 언급 한 바와 같이, 세그먼트 레지스터 주소를 사용하여 20 개의 주소 라인을 작동시켰다 (80286 은이 트릭을 24 비트의 물리적 주소로 확장했다). 다른 방향으로, 많은 "32 비트"CPU는 메모리 메모 (Mewabytes)를 갖지 않는 기계에 사용되지 않는 논리를 절약하기 위해 더 작은 주소 버스를 가졌습니다. 포인터 자체는 32 세였다. 마찬가지로 현대의 64 비트 CPU는 64 비트 미만의 물리적 주소를 구현한다.

다른 팁

일반적으로 축적기/레지스터 크기로 레이블을 붙입니다.

CPU와 관련하여, 나는 그것이 레지스터의 너비라고 말하고 싶습니다. 당신은 만 작업을 수행 할 수 있습니다 8 비트, 16 비트, 32 비트, 한 번에 등.

내가 아는 한 프로세서의 비트 너비는 내부 데이터 처리 회로가 한 번에 수용하는 비트 수에 의해 결정됩니다. ALU의 부가자, 승수 등이 16 비트 피연산자를 허용하는 경우 CPU는 16 비트이며 32 비트를 허용하면 32 비트입니다. 데이터 버스 또는 주소 버스의 너비는 중요하지 않습니다. 일반적으로 축합기의 비트 길이는 프로세서의 비트 길이를 결정합니다.

마이크로 프로페셜의 비트 크기 (8 비트, 16 비트, 32 비트)는 하드웨어, 특히 데이터 버스의 폭에 따라 결정됩니다. 인텔 8086은 데이터 버스를 통해 한 번에 16 비트를 이동할 수 있기 때문에 16 비트 프로세서입니다. 인텔 8088은 동일한 명령어 세트가 있어도 8 비트 프로세서입니다. 이것은 Motorola 68000 및 68008 프로세서와 유사합니다. 비트 크기는 프로그래머의보기 (레지스터 너비 및 주소 범위)에 의해 결정되지 않습니다.

통합 칩의 첫 번째 수는 프로세서 유형을 나타냅니다. IC 8085 인 경우 8 비트 프로세서임을 의미합니다.

모든 프로세서는 두 가지 속성으로 지정될 수 있습니다.

  1. 명령어 세트 아키텍처 및
  2. 아니요.단일 클럭 사이클에서 처리할 수 있는 비트 수입니다.

x86-32라고도 하는 Intel의 IA-32 아키텍처를 예로 들어 보겠습니다. 여기서 x86은 아키텍처를 나타내고 32는 32비트 프로세서를 나타냅니다.

X-아키텍처

여러 가지 아키텍처가 있습니다

x86 이전 x86

-Intel의 IA-32 아키텍처(x86-32 -x86-64라고도 함) - -AMD의 AMD64 및 Intel의 Intel 64 버전 - 모토로라의 6800 및 68000 a

아키텍처 ARM7

Y비트 프로세서

:간단히 말해서 단일 클록 주기에서 CPU/프로세서의 데이터 처리 기능입니다.8비트 프로세서라고 가정하면 단일 클록 사이클에서 ALU는 8비트 데이터에 대해서만 작업을 수행할 수 있습니다.(이 작업은 데이터를 다른 IO 장치로 전송하는 것뿐만 아니라 추가/제외와 같은 내부 작업일 수도 있습니다.)

classification Based on Registers-

ALU 및 CU 외에 프로세서에는 레지스터라고 하는 일부 메모리 위치도 포함되어 있습니다.프로세서에 따라 레지스터는 일반적으로 8, 16, 32 또는 64비트를 저장할 수 있습니다.특정 프로세서의 레지스터 크기를 통해 프로세서를 분류할 수 있습니다.n비트의 레지스터 크기를 가진 프로세서를 n비트 프로세서라고 하며, 8비트 레지스터를 가진 프로세서를 8비트 프로세서라고 합니다.

classification Based on databus width-

alu는 단일 클럭 사이클에서 8비트 데이터만 처리할 수 있기 때문에 그보다 더 큰 데이터 버스 너비를 갖는 것은 의미가 없으며 8비트 프로세서는 8비트 너비의 데이터 버스를 가지므로 데이터 버스 너비도 찾을 수 있는 대체 방법이 될 수 있습니다. 프로세서의 비트 처리 능력이 부족합니다. n 비트 데이터 버스가 있는 프로세서의 경우 CPU가 단일 작업으로 n 비트를 다른 장치로 전송할 수 있음을 의미합니다.

질문에 대해:

"32비트 ALU가 있다고 가정합니다.한 번에 32 비트가 걸릴 수 있으며 데이터 버스 크기는 16 비트입니다.한 번에 16비트의 데이터를 저장할 수 있습니다. thn wht는 ANS가 될 것입니다.이런 경우는...?"

이러한 프로세서의 예는 Intel 8088 및 Moto 68000입니다.

버스 폭 분류를 사용하는 Intel 8088 마이크로프로세서는 CPU 레지스터가 실제로 16비트 레지스터이지만 8비트 데이터 버스를 사용하므로 8비트 프로세서입니다.마찬가지로 Motorola 68000은 CPU 레지스터가 32비트 레지스터임에도 불구하고 16비트 프로세서로 분류됩니다.때로는 8088이 8/16비트 프로세서로 설명되고 Motorola 68000이 16/32비트 프로세서로 설명될 수 있는 두 가지 분류의 조합이 사용되는 경우도 있습니다.

마이크로 프로세서의 단어 크기 (8 비트, 16 비트 또는 32 비트)는 실행 장치의 데이터 경로의 크기입니다. 일반적으로 이것은 축합기의 크기입니다. 이것은 실행 장치 크기입니다. 이것이 중요한 예는 8088이며, 이는 8 비트 버스에서 16 비트 컴퓨터입니다. 8085는 8 비트입니다. 8086/8088은 16 비트입니다. 80386은 32 비트입니다. Mordern Intel 프로세서는 64 비트입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top