Утилита dasm
Утилита dasm представляет собой простейший вариант дизассемблера из набора команд процессора КР1801ВМ1 в вид текстовой формат, близкий к формату MACRO-11(tm), позволяющий сравнительно легко разбираться в двоичных кодах программ для БК. Фактически, dasm представляет собой несколько доработанный вариант дизассемблера, который я в написал в 1988 году для ДВК-2, на которой мне довелось работать в то время.
Командная строка для вызова dasm следующая:
$ dasm [-a | -b | -c | -f forced_file] tape_file
Где ключ -a, -b и -c задают формат дополнительного вывода данных:
-a указывает необходимость вывода ASCII кодов;
-b указывает необходимость вывода байтовых кодов
-c отменяет пословный вывод кодов.
При всех заданых ключах (dasm -a -b) вывод принимает следующий вид:

; Disassembler V01.5.1 BK 001x-xx (bkread)
; Alexander "las" Lunev
; Start address = 100000
; Length = 20000
; Tape file name: MONITOR           
;       Command Operand(s)              Address  Codes
;
$START$:JMP     MONITOR                 !100000: 000167 000254 167 000 254 000 "w.?."
 EMT_4P:.WORD   100742                  !100004: 100742 342 201 "??"
 EMT_6P:.WORD   101010                  !100006: 101010 010 202 ".?"
Непосредственно за кодами инструкций, после восклицательного знака (комментарий) следуют: обязательный адрес, пословная расшифровка кода команды, ее байтовые коды, (все в восьмеричном исчислении) и ее строковое представление.
 
Яндекс.Метрика