기계코드모니터

Machine code monitor
W65C816S 단일 보드 컴퓨터의 기계 코드 모니터, 코드 분해 표시, 프로세서 레지스터 및 메모리 덤프
Apple II6502 기계 코드 모니터

기계코드 모니터(a.k.a.기계언어모니터)는 컴퓨터의 메모리 위치를 보고 변경하는 명령을 입력할 수 있는 소프트웨어로 메모리 콘텐츠를 2차 저장소에서 로딩 및 저장하는 옵션이다.일부 완전한 기능을 갖춘 기계코드 모니터는 기계어 프로그램(디버거와 같은 것)의 실행에 대한 세부적인 제어("싱글스텝")를 제공하며, 절대 주소 코드 조립분해 기능을 포함한다.

기계코드 모니터는 1970년대와 1980년대 가정용 컴퓨터 시대에 인기를 끌었으며 일부 컴퓨터에서는 상주 펌웨어로 사용되기도 했다(예: 코모도어 128, 히스킷 H89, 제니스 노트북의 내장형 모니터).흔히 컴퓨터 제조업체는 ROM 상주 모니터에 의존하여 사용자가 확장된 메인 메모리, 추가 디스크 드라이브 또는 다른 비디오 디스플레이와 같은 업그레이드 하드웨어 설치 후 컴퓨터를 재구성할 수 있도록 허용한다.

본격적인 상징조립자 대신 모니터로 자신의 모든 프로그래밍을 수행하는 것은 전례가 없는 일이 아니었다.완전한 기능을 갖춘 조립자를 쉽게 구할 수 있게 된 후에도, 기계 코드 모니터는 디버깅 프로그램에 필수 불가결한 것이었다.일반적인 기법은 시험을 진행 중인 코드(예: 6502 어셈블리 언어로[1][2][3] BRK 명령)에 중단점을 설정하고 프로그램을 시작하는 것이었다.마이크로프로세서가 중단점에 부딪혔을 때, 테스트 프로그램은 중단되고 제어는 기계 코드 모니터로 전달될 것이다.일반적으로, 이것은 레지스터 덤프를 유발하고 모니터가 프로그래머 입력을 기다리게 된다.이 시점의 활동에는 테스트 프로그램을 다시 시작하기 전에 메모리 내용물 검사, 패치 코드 및/또는 프로세서 레지스터 변경 등이 포함될 수 있다.

스크래치로 작성된 조립 언어 소프트웨어의 일반적인 감소는 기계 코드 모니터를 다소 잃어버린 예술로 만들었다.상위 언어가 사용되는 대부분의 시스템에서는 디버거를 사용하여 프로그램 내에서 일어나고 있는 일에 대해 보다 추상적이고 우호적인 견해를 제시한다.그러나 특히 취미로 만든 컴퓨터 분야에서 기계 코드 모니터의 사용은 계속되고 있다.[citation needed]

참조

  1. ^ R.J. Tocci & L.P. Laskowski (1979). Microprocessors and Microcomputers: Hardware and Software. Prentice-Hall. p. 379. ISBN 9780135813225.
  2. ^ L.A. Leventhal (1986). 6502 Assembly Language Programming. Osborne/McGraw-Hill. ISBN 9780078812163.
  3. ^ A.F. Kuckes & B.G. Thompson (1987). Apple II in the Laboratory. UP Archive. p. 93. ISBN 9780521321983.