Страницы: 1 .. 190 191 192 193 194 .. 282
Debug: l (load)
Загрузка файла или содержимого сектора диска в память. Выполненная без параметров подкоманда l загружает файл, указанный в командной строке программы debug, в память, начиная с адреса CS:100. В регистрах BX и CX указывается количество загруженных байт. Если имя файла не было задано в командной строке debug, используется файл, ранее заданный при вызове последней подкоманды n.
Синтаксис
l [адрес]
l [адрес] [диск] [первый_сектор] [число]
Параметры
- адрес
- Задание адреса области памяти, в которую требуется загрузить содержимое файла или сектора. Если параметр адрес не задан, используется текущий адрес в регистре CS.
- диск
- Задание накопителя, содержащего диск, с которого считываются определенные сектора. Данный параметр задается числом: 0 = A, 1 = B, 2 = C и т. д.
- первый_сектор
- Задание шестнадцатеричного номера первого сектора, содержимое которого требуется загрузить.
- число
- Задание шестнадцатеричного числа последовательных секторов, содержимое которых требуется загрузить. Параметры диск, первый_сектор и число используются только в том случае, когда необходимо загрузить содержимое определенных секторов, а не файл, указанный в командной строке debug или в последней подкоманде n (name).
- ?
- Вывод списка подкоманд debug.
Заметки
- Для загрузки задаваемого регистрами BX:CX числа байтов из файла на диске используется следующий синтаксис:
l [адрес]
- Для пропуска файловой системы и прямой загрузки указанных секторов используется следующий синтаксис:
l [адрес] [диск] [первый_сектор] [число]
-
Задание правильных записей адреса
Адрес состоит из двух частей: первая содержит буквенное обозначение сегментного регистра или адрес сегмента из четырех цифр, а вторая содержит значение смещения. Адрес сегмента или сегментный регистр могут быть пропущены. По умолчанию для подкоманд a, g, l, t, u и w команды debug адрес сегмента содержится в регистре CS. Для других подкоманд по умолчанию используется сегмент DS. All numeric values are in hexadecimal format. Между именем сегмента и значением смещения следует вставлять двоеточие. Следующие адреса являются допустимыми:
CS:0100
04BA:0100
-
Использование параметра адрес
При вызове подкоманды l с указанием параметра адрес Debug.exe загрузит файл или содержимое сектора диска в область памяти, начиная с адреса.
-
Использование всех параметров
При вызове подкоманды l со всеми параметрами Debug.exe загружает содержимое сектора диска, а не файла.
-
Загрузка содержимого сектора диска
Каждый сектор в указанном диапазоне считывается с диска, заданного параметром диск. Debug.exe начинает загрузку с первого_сектора и последовательно загружает сектора в память, пока не будет загружено заданное число секторов.
-
Загрузка файла .exe
Для файлов с расширением .exe параметр адрес игнорируется. В этом случае Debug.exe использует загрузочный адрес, задаваемый в заголовке .exe файла. При загрузке заголовок отделяется от самого .exe файла, загружаемого в память, поэтому размер файла, указанный в заголовке, и фактически занимаемый размер в памяти будут различаться. Для просмотра .exe файла целиком он может быть переименован в файл с другим расширением и затем просмотрен в программе Debug.
-
Загрузка файлов .hex
В программе Debug.exe файлы с расширением .hex распознаются как файлы в шестнадцатеричном формате. Подкоманду l можно запустить без параметров для загрузки такого шестнадцатеричного файла, начиная с адреса, указанного в данном файле. Если подкоманда l запущена с параметром адрес, начальная точка загрузки определяется как сумма заданного адреса и адреса, содержащегося в шестнадцатеричном файле.
Примеры
В командной строке введите:
debug
Введите следующую команду:
nfile.com
Чтобы загрузить файл File.com, введите следующую команду:
l
Debug.exe загружает этот файл и выводит приглашение debug.
Чтобы загрузить содержимое 109 (6Dh) секторов диска C, начиная с логического сектора 15 (0Fh), в область памяти, начиная с адреса 04BA:0100, введите следующую команду:
l04ba:100 2 0f 6d
1 .. 190 191 192 193 194 .. 282