나침반

COMPASS

COMPRESSive ASSemblerControl Data Corporation3000 시리즈와 60비트 CDC 6000 시리즈, 7600 시리즈, Cyber 70170 시리즈 메인프레임 컴퓨터에 있는 매크로 어셈블리 언어의 모든 제품군이다.[1]구조는 매우 다르지만, 매크로와 조건부 조립 시설은 비슷하다.

60비트 컴퓨터용 나침반

60비트 기계에는 두 가지 맛의 나침반이 있다.

  • 나침반 CP는 프로세서가 사용자 프로그램을 실행하는 CP(Central Processor, Central Processor)의 어셈블리 언어다.CDC 6600 CP 아키텍처를 참조하십시오.
  • 나침반 PP는 운영 체제 코드만 실행하는 PP(Peripheral Processor)의 조립 언어다.CDC 6600 PP 아키텍처를 참조하십시오.

나침반은 매크로 및 조건부 조립 기능을 가진 고전적인 투패스 조립체로, 소스 조립 코드와 생성된 기계 코드(옥타)를 모두 보여주는 전체 목록을 생성한다.CDC의 운영 체제는 거의 전적으로 COMPACH 조립 언어로 작성되었다.

중앙 프로세서(CP 또는 CPU) 하드웨어는 A0 ~ A7, X0 ~ X7, B0 ~ B7이라는 24개의 작동 레지스터를 유지한다.레지스터 X0~X7은 60비트 길이여서 데이터를 보관하는 데 사용되는 반면, 레지스터 B0~B7은 18비트 길이이며, B0은 항상 0인 것을 제외하고 주소를 보유하거나 인덱싱 레지스터로 사용하는 것이 주요 목적이다.프로그래밍 규약으로서 B1(또는 B7)은 종종 양수 1을 포함한다.

a 또는 주소 레지스터는 또한 18비트 길이다.각 A 레지스터는 해당 X 레지스터와 쌍을 이룬다.A1 ~ A5 레지스터 중 하나에 주소를 설정할 때마다 해당 메모리 위치(주소)의 데이터가 해당 X 레지스터에 로드된다.마찬가지로 주소를 A6 또는 A7 레지스터 중 하나로 설정하면 해당 X6 또는 X7 레지스터에 저장된 데이터가 해당 메모리 위치에 저장된다.단, A0은 레지스터 X0의 내용에 영향을 미치지 않고 어떠한 주소도 보유할 수 있다.

CP 지침은 특히 사용자에게 친숙한 형태로 작성된다. "SA1 A0+B1"은 주소 레지스터 A0과 색인 레지스터 B1의 합계에 대한 설정 주소 레지스터 A1을 의미한다.그런 다음 하드웨어는 계산된 주소에서 레지스터 X1로 메모리 로드를 시작한다.

주변 프로세서(PP 또는 PPU) 지침은 CPU 지침과 완전히 다르다.주변 프로세서 하드웨어는 18비트 A(어큐뮬레이터 레지스터, 12비트 프로그램 주소 레지스터, 12비트 Q 레지스터(프로그래머 비주얼), 22비트 R 레지스터(Cyber 180 시스템의 중앙 메모리 읽기 및 쓰기 지침 중 주소 재배치 수행에 사용됨)가 더 간단하다.주변 프로세서 프로그램을 조립하기 위해 특별한 작업 검증이 필요하지는 않았지만, 실행하기 위해서는 특수 시스템 편집 명령을 통해 운영 체제에 설치되어야 했다.

추가 읽기

  • 1972년 알고리즘 프레스, Ralph Grishman의 "제어 데이터 6000 시리즈를 위한 어셈블리 언어 프로그래밍"[2]

참조

  1. ^ "compass - FOLDOC - Computing Dictionary".
  2. ^ http://cholla.mmto.org/computers/firstcdc.html에 인용된

외부 링크