Monitorowanie kodu maszynowego - Machine code monitor
Monitora kodu maszynowego ( aka języku maszynowym monitora) to oprogramowanie , które pozwala użytkownikowi na wprowadzanie poleceń do przeglądania i zmiany pamięci lokalizacjach na komputerze , z opcji, aby załadować i zapisać zawartość pamięci z / do pamięci pomocniczej . Niektóre w pełni funkcjonalne monitory kodu maszynowego zapewniają szczegółową kontrolę („single-stepping”) wykonywania programów w języku maszynowym (podobnie jak debugger ) i zawierają możliwości asemblowania i dezasemblacji kodu adresu bezwzględnego .
Monitory kodu maszynowego stały się popularne w erze komputerów domowych w latach 70. i 80. XX wieku i były czasami dostępne jako rezydentne oprogramowanie układowe w niektórych komputerach (np. wbudowane monitory w laptopach Commodore 128 , Heathkit H89 i Zenith). Producenci komputerów często polegają na swoich monitorach rezydujących w pamięci ROM, aby umożliwić użytkownikom rekonfigurację ich komputerów po zainstalowaniu uaktualnionego sprzętu, takiego jak rozszerzona pamięć główna, dodatkowe napędy dysków lub różne wyświetlacze wideo.
Nie było niczym niespotykanym wykonywanie wszystkich programów na monitorze zamiast pełnoprawnego symbolicznego asemblera. Nawet po tym, jak w pełni funkcjonalne asemblery stały się łatwo dostępne, monitor kodu maszynowego był niezbędny do debugowania programów. Typową techniką było ustawienie punktów przerwania w testowanym kodzie (np. za pomocą instrukcji BRK w asemblerze 6502 ) i uruchomienie programu. Gdy mikroprocesor napotka punkt przerwania, program testowy zostanie przerwany, a sterowanie zostanie przeniesione do monitora kodu maszynowego. Zazwyczaj spowoduje to wyzwolenie zrzutu rejestru, a następnie monitor będzie oczekiwał na dane wejściowe programisty. Działania w tym momencie mogą obejmować badanie zawartości pamięci, łatanie kodu i/lub zmianę rejestrów procesora przed ponownym uruchomieniem programu testowego.
Ogólny upadek oprogramowania asemblerowego pisanego od zera sprawił, że użycie monitora kodu maszynowego stało się nieco zagubioną sztuką. W większości systemów, w których używane są języki wyższego poziomu, debugery służą do przedstawiania bardziej abstrakcyjnego i przyjaznego obrazu tego, co dzieje się w programie. Jednak nadal stosuje się monitory kodu maszynowego, zwłaszcza w obszarze komputerów hobbystycznych .
Bibliografia
- ^ RJ Tocci i LP Laskowski (1979). Mikroprocesory i mikrokomputery: sprzęt i oprogramowanie . Prentice-Hall. str. 379 . Numer ISBN 9780135813225.
- ^ LA Leventhal (1986). 6502 Programowanie w języku asemblera . Osborne/McGraw-Hill. Numer ISBN 9780078812163.
- ^ AF Kuckes i BG Thompson (1987). Jabłko II w Laboratorium . Archiwum UP. str. 93. Numer ISBN 9780521321983.