현재 위치 - 법률 상담 무료 플랫폼 - 특허 조회 - 805 1 8086 및 8088 과의 차이점
805 1 8086 및 8088 과의 차이점
주 805 1 은 8 비트이고 8086 과 8088 은 16 비트이므로 조립할 때 표기법이 다르므로 알고리즘에 주의해야 하지만 805 1 만 익히면 빠르게 전환할 수 있습니다

다음은 몇 가지 일반적인 정보입니다: (복사하여 붙여넣은 것입니다.)

8086 은 인텔의 CPU 입니다. 지구상 인텔뿐만 아니라 모토로라도 CPU 를 생산한다. 인류가 발전함에 따라 CPU 도 끊임없이 발전하고 있다. 8086 의 발전은 점점 더 풍만해지고 있다. 즉, 나중에 /80286/80386/80486/ 펜티엄 /p2/p3/p4.

805 1 은 단일 칩 마이크로 컴퓨터로 컴퓨터의 일종이다. 실제로 805 1 에는 CPU 뿐만 아니라 RAM, ROM, 타이머, I/O 인터페이스 등이 포함되어 있습니다. , 하지만 PC 보다 훨씬 작고 용도도 다릅니다. 왜 805 1 시리즈라고 합니까? 805 1 은 인텔이 개발한 기술로, 자체 기술인 MCS-51+0 을 보유하고 있습니다. MCS-5 1 시리즈 목록에는 80C3 1, 805 1, 875 1 세 가지 기본 모델, 해당 저전력 모델 80c3 이 포함되어 있습니다 1980 년대 중반 이후 인텔은 805 1 커널을 특허 양도로 판매하고 805 1 커널은 Intel, 화방, 필립스, 모토로라, ANANOG DEVICES, DALLAS 로 판매하고 있습니다. 예를 들면: ZILOG 의 Z8 시리즈, 필립스의 5 1X 시리즈, 모토로라의 68HC05/08 시리즈 등이 있습니다.

8086/8088 마이크로프로세서

8086 은 Inter 제품군의 16 비트 마이크로프로세서로 칩에 29,000 개의 트랜지스터가 있으며 HMOS 기술을 사용합니다.

예술 제조, +5V 단일 전원 공급 장치, 클럭 주파수 5MHz~ 10MHz.

8086 에는 16 개의 데이터 케이블과 20 개의 주소선이 있습니다. 16 비트 데이터와 8 비트 데이터를 처리할 수 있습니다. 할 수 있다

주소 지정 스토리지 공간은 1MB 입니다.

Inter 는 8086 을 출시할 때 준 16 비트 마이크로프로세서 8088 및 8088 내부 레지스터를 출시했습니다. 연산 부품과 내부 데이터 버스는 모두 16 비트로 설계되었으며 8 개의 외부 데이터 버스만 있습니다. 8086 출시의 주요 목적은 당시의 Inter 외부 장치 인터페이스 칩 세트와 직접 호환되는 것입니다. 8086 과 8088 은 레지스터 구조, 프로그래밍 구조, 스토리지 조직 및 I/O 포트 구성에서 완전히 동일하거나 약간 다릅니다. 이 섹션에서는 이러한 차이점에 대해 설명합니다.

레지스터 구조는 1.3. 1 8086/8088 입니다

그림 1-3 은 8086/8088 의 레지스터 구조를 보여줍니다.

1. 데이터 레지스터

데이터 레지스터는 그림 맨 위에 표시된 4 개의 레지스터 AX, BX, CX 및 DX 입니다. 이러한 레지스터는 피연산자 및 계산 중 얻은 결과를 임시로 저장하는 데 사용됩니다. 16 자리 및 8 자리 숫자를 처리할 수 있습니다. 8 비트를 처리할 때 이 4 개의 16 비트 레지스터는 8 개의 8 비트 레지스터 (AH, Al, BH, BL, CH, CL, DH, DL) 로 사용됩니다.

범용 레지스터로서, 이 네 개의 데이터 레지스터에는 고유한 특수 용도가 있습니다.

AX (누적기) 는 누적기로 사용되며 산술 연산의 주 레지스터입니다. AX 는 단어 곱셈과 단어 나눗셈에도 사용됩니다. 또한 모든 입출력 명령은 AX 주변 외부 장치와 정보를 전송합니다.

레지스터 주소를 계산할 때 BX(base) 는 종종 기본 값 레지스터로 사용됩니다.

CX(count) 는 작동 명령 및 루프에서 카운터로 사용됩니다.

DX (데이터) 단어 곱셈과 단어 나누기 연산에서 DX 와 AX 는 16 높이의 숫자를 저장하는 데 사용되는 이중 단어로 결합됩니다. 또한 간접 I/O 명령어에서 DX 는 I/O 포트 주소를 지정하는 데 사용됩니다.

포인터 레지스터 및 주소 변경 레지스터

포인터 레지스터에는 스택 레지스터 SP (스택 포인터) 및 기수 포인터 레지스터 BP (기본 주소 포인터) 가 포함되며 변경됩니다

값 레지스터에는 소스 주소 변경 레지스터 SI (소스 주소 변경) 및 대상 주소 변경 레지스터 DI (대상 주소 변경) 가 포함됩니다. 이것은

이 네 개의 레지스터는 모두 16 비트 레지스터이며 작업 중 작업 수를 저장하는 데도 사용할 수 있습니다 (

단어) 이지만 일반적으로 세그먼트 내 주소 지정 시 오프셋 주소를 제공하는 데 사용됩니다. SP 와 BP 는 일반적으로 세그먼트 레지스터 SS 와 동일합니다.

스택 레지스터에서 장치의 주소를 결정하기 위해 SP 는 스택 맨 위의 오프셋 주소를 나타내는 데 사용됩니다. BP 는 다음을 수행할 수 있습니다.

스택의 피연산자 주소를 결정하는 스택 영역의 기본 주소로 사용됩니다. SI, DI 범용 레지스터 및 세그먼트 레지스터

DS 는 데이터 세그먼트의 저장 장치 주소를 결정하는 데 사용됩니다. Si 및 di 에는 자동 증가 및 자동 감소 기능이 있습니다.

이렇게 하면 문자열 조작 지침에서 색인으로 쉽게 사용할 수 있습니다. SI 는 암시적 소스 인덱스 DS 로 사용되고 DI 는 인덱스로 사용됩니다.

ES 는 암시적 대상 인덱스를 사용하여 데이터 세그먼트 및 추가 세그먼트 주소 지정 목적을 달성합니다.

3 세그먼트 레지스터

하나의 * * * 에는 다음과 같은 4 개의 세그먼트 주소 레지스터가 있습니다.

CS (조각 레지스터) 16 비트 조각 레지스터

Ds (세그먼트 레지스터) 16 비트 세그먼트 레지스터

SS (스택 세그먼트 레지스터) 16 비트 스택 세그먼트 레지스터

Es (추가 세그먼트 레지스터) 16 은 추가 세그먼트 레지스터입니다.

아래에 언급된 바와 같이 IBM PC 는 메모리 주소 세그먼트화를 사용하여 8086/8088 이 1MB 메모리를 주소 지정할 수 있습니다. 세그먼트 레지스터는 세그먼트 주소를 저장하고 CS 세그먼트 레지스터는 현재 실행 중인 프로그램을 저장하는 데 사용됩니다. DS 세그먼트 레지스터는 현재 실행 중인 데이터를 저장하는 데 사용됩니다. 프로그램에서 세그먼트 조작 명령을 사용하면 소스 피연산자도

데이터 세그먼트에 저장되고 SS 세그먼트 레지스터는 스택이 있는 영역을 지정합니다. ES 세그먼트 레지스터는 보조 데이터를 저장하는 데 사용됩니다.

ES 는 추가 데이터 세그먼트이므로 문자열 조작 명령을 실행할 때 대상 피연산자는 일반적으로 ES 세그먼트에 저장됩니다.

4. 제어 레지스터

IP (명령 포인터) 는 코드 조각에 오프셋 주소를 저장하는 16 비트 레지스터인 명령 포인터 레지스터입니다. 다음 명령의 주소를 결정하기 위해 CS 에서만 사용할 수 있습니다. 이 주소에 따라 컨트롤러는 지정된 스토리지에서 실행할 다음 명령을 제거하고 다음 명령을 가리키도록 IP 를 수정합니다. 보이는 IP

레지스터는 명령어 시리즈의 실행 흐름을 제어하는 데 사용됩니다.

PSW (프로세서 상태 단어) 는 상태 표시 레지스터와 16 비트 레지스터이며 이 섹션의 뒷부분에서 설명합니다.

위에서 설명한 레지스터는 컴퓨터에서 매우 중요한 역할을 합니다. 이러한 레지스터는 연산 과정에서 메모리 역할을 하지만 메모리보다 액세스 속도가 훨씬 빠릅니다.

1.3.2 8086/8088 의 프로그래밍 구조

프로그래밍 구조란 사용자 관점에서 볼 수 있는 구조로 기능별로 구분된 구조로, 물론 CPU 내부의 실제 물리적 구조와는 다르다. (마하트마 간디, 프로그래밍, 프로그래밍, 프로그래밍, 프로그래밍, 프로그래밍, 프로그래밍, 프로그래밍, 프로그래밍, 프로그래밍, 프로그래밍)

8086 의 프로그래밍 구조는 그림 1-4 에 나와 있습니다. 그는 두 부분으로 나누어졌다. 버스 인터페이스 부분 BIU (버스 인터페이스 유닛) 와 실행 부분 EU (실행 유닛) 입니다.

버스 인터페이스 섹션은 메모리 및 주변 장치 포트와 데이터 전송을 담당합니다. 특히, 버스 인터페이스 부분이 스토리지에서 명령을 꺼내 명령 대기열로 보내면 CPU 가 명령을 실행할 때 필요한 작업 수도 버스 인터페이스 부분에서 지정된 스토리지 장치 또는 주변 장치 포트에서 제거되어 실행 부분으로 전송되며, 반대로 실행 부분의 연산 결과도 전달됩니다.

버스 인터페이스는 지정된 스토리지 유닛 또는 주변 장치 포트로 전송됩니다.

버스 인터페이스 구성 요소는 4 개의 세그먼트 레지스터, 명령 포인터 레지스터 IP, 20 비트 주소 덧셈기 및 6 바이트 명령 큐의 네 부분으로 구성됩니다.

주소 가산기는 20 개의 주소를 생성하는 데 사용됩니다. 앞서 언급했듯이 8086/8088 의 모든 레지스터는 16 비트이고 8086/8088 은 20 비트 주소로 1MB 스토리지 공간을 주소 지정할 수 있으므로/kloc-0-을 따라야 합니다

레지스터 정보, 20 비트 물리적 주소 계산, 구체적인 알고리즘은 이 섹션의 뒷부분에서 메모리 구성에 대해 설명할 때 설명합니다.

버스 인터페이스 섹션에서 주의해야 할 점은 8086 의 명령어 대기열은 6 바이트이고 8088 은 4 바이트라는 점이다. 8086 이든 8088 이든, 명령을 실행하는 동안 메모리에서 다음 명령 중 하나 이상을 꺼내고, 제거한 명령은 명령 대기열에 순차적으로 배치되고, 순차적으로 EU 에서 실행됩니다. 실행 부분 EU 의 기능은 명령 실행을 담당하는 것입니다.

실행 섹션에는 데이터 레지스터 4 개, 포인터 레지스터 2 개, 변수 값 레지스터 2 개, 1 상태 플래그 레지스터 1 개, 산술 논리 장치 1 개가 포함됩니다.

프로그램 구조에서 볼 수 있듯이 버스 인터페이스 부분과 실행 부분이 분리되어 있기 때문에 EU 가 명령을 실행하여 명령 대기열에 두 개 또는 한 개의 명령 바이트가 누락되면 BIU 는 즉시 메모리에서 다음 명령 중 하나 이상을 제거하여 명령 대기열을 채웁니다. 이렇게 하면 일반적으로 CPU 가 한 명령을 실행한 후 바로 다음 명령을 실행할 수 있습니다. 이전 8 비트 CPU 와 달리 다음 명령을 대기해야 합니다.

1.3.3 8086/8088 의 메모리 구성

1. 스토리지 장치의 주소 및 내용

2. 컴퓨터가 정보를 저장하는 기본 단위는 이진 비트로 8 비트마다 1 바이트를 구성합니다.