ВУЗ:
Составители:
61
; Подключить набор процедур вывода/вывода данных
include "lst_2_02.inc"
; Подключить подпрограмму, переводящую сегментный
; регистр GS в режим линейной адресации
include "lst_3_01.inc"
; Подключить подпрограмму, отображающую на экране
; содержимое регистров процессора
include "lst_3_02.inc"
END
Листинг 2.4 [1] демонстрирует использование линейной адресации для
отображения содержимого памяти компьютера на экране, то есть выдачи
дампа памяти. Программа MemoryDump позволяет просматривать все адресное
пространство, а не только оперативную память. Можно, например, считывать
память видеоконтроллера или вообще неиспользуемые области.
Кроме процедур ввода/вывода общего назначения, в MemoryDump
используются также следующие подпрограммы:
− процедура ShowASCIIChar осуществляет вывод символа в ASCII-
коде в заданную позицию экрана;
− процедура HexToBin32 осуществляет перевод числа (введенного с
клавиатуры адреса) из шестнадцатеричного кода в двоичный;
− процедура GetAddressOrCommand принимает команды, вводимые с
клавиатуры (введенное число воспринимается как линейный адрес
памяти в шестнадцатеричном коде, нажатие на управляющие
клавиши — как команда).
Листинг 2.4 – Использование линейной адресации для отображения на
экран содержимого оперативной памяти
IDEAL
P386
LOCALS
MODEL MEDIUM
; Подключить файл мнемонических обозначений
; кодов управляющих клавиш
include "lst_2_03.inc"
; Подключить набор процедур вывода/вывода данных include "lst_2_02.inc" ; Подключить подпрограмму, переводящую сегментный ; регистр GS в режим линейной адресации include "lst_3_01.inc" ; Подключить подпрограмму, отображающую на экране ; содержимое регистров процессора include "lst_3_02.inc" END Листинг 2.4 [1] демонстрирует использование линейной адресации для отображения содержимого памяти компьютера на экране, то есть выдачи дампа памяти. Программа MemoryDump позволяет просматривать все адресное пространство, а не только оперативную память. Можно, например, считывать память видеоконтроллера или вообще неиспользуемые области. Кроме процедур ввода/вывода общего назначения, в MemoryDump используются также следующие подпрограммы: − процедура ShowASCIIChar осуществляет вывод символа в ASCII- коде в заданную позицию экрана; − процедура HexToBin32 осуществляет перевод числа (введенного с клавиатуры адреса) из шестнадцатеричного кода в двоичный; − процедура GetAddressOrCommand принимает команды, вводимые с клавиатуры (введенное число воспринимается как линейный адрес памяти в шестнадцатеричном коде, нажатие на управляющие клавиши — как команда). Листинг 2.4 – Использование линейной адресации для отображения на экран содержимого оперативной памяти IDEAL P386 LOCALS MODEL MEDIUM ; Подключить файл мнемонических обозначений ; кодов управляющих клавиш include "lst_2_03.inc" 61
Страницы
- « первая
- ‹ предыдущая
- …
- 59
- 60
- 61
- 62
- 63
- …
- следующая ›
- последняя »