Команда: dis88 disassembler [IBM] Синтаксис: dis88 [o] infile [outfile] Флаги: o Представляет объектный код наряду с ассемблерным кодом Examples: dis88 a.out >listing # Дизассемблирует a.out Examples: dis88 o a.out listing # Тоже самое, но с объектным кодом Dis88 дизассемблирует 8088 объектных кодов к формату ассемблера, используемому в MINIX. Это обеспечивает полноценное использование информации из таблицы идентификаторов, поддрежку отдельных команд и пространства данных,генерировать метки, когда это требуется. Не поддерживаются 8087 мнемоники, символические ссылки сегмента данных, или ESC мнемоники. Программа вызывается: dis88 [o] infile [outfile] Флаг o обрабатывает объектный код. Если не дается никакого исходящего файла, то используется stdout. Текстовая часть объектного файла всегда дополняется к четному адресу. Кроме того, если файл разбит I/D пространством, текстовая часть дополнится к границе параграфа (т.е. адрес делится на 16). Из-за дополнений, дизассемблер может выполнить несколько копий безопасных команд в текстовой части. Поскольку информация, к которой инициализированные данные обращаются, не может вообще выводиться из контекста, сегмент данных обработан буквально. Байтовые значения (в шестнадцатеричном формате) выводятся и длинные отрезки нулевых данных представляются соответствующими нулевыми псевдооперациями. Никакие данные не выводятся в сегменте, но указываются соответствующие символические метки. Вывод операндов в символической форме усложнен существующими символическими константами ассемблера, отменяющими коды операции. Таким образом, подпрограмма поиска символов в программе, пытается применять некоторое количество сведений в процессе поиска символов. Если соответствующий символ не найден, выводится символ некоего другого типа, в зависимости от предписанного (и несколько произвольного) ранжирования в пределах каждого типа. Наконец, в случае неудачи будет выведена строка содержащая адрес разыскиваемый как шестнадцатеричная константа. Для удобства пользователей, адресаты ветвей также выводятся в комментариях, как шестнадцатеричные константы. Сообщения об ошибках В процессе дизасемблирования могут возникать различного рода сообщения об ошибках. Они упомянуты ниже Cannot access input file Входящий файл не может быть открыт или прочитан Cannot open output file Исходящий файл не может быть создан Input file not in object format Неправильный формат файла Not an 8086/8088 object file CPU ID Идентификатор заголовка файла неправилен Reloc table overflow Переполнение таблицы, более 1500 вхождений Symbol table overflow Таблица идентификаторов (символов) превышает 1500 вхождений Lseek error Входящий файл испорчен (недопустимое значение) Warning: no symbols Какие-либо символы отсутствуют Cannot reopen input file Входящий файл был удален в ходе выполнения Автор Авторское право на Dis88 принадлежит G. M. Harding. Любые изменения разрешены только со ссылкой на автора.