Faultless #02
08 апреля 1996 |
|
+++++++++++++++++++++++++++++++ ТЕКСТ:ВОРОЖКИН АЛЕКСАНДР. ИНФОРМАЦИЯ:БАЖЕНОВ СТАНИСЛАВ. МУЗЫКА:КОШПАРЕНОК ПАВЕЛ. РАЗДЕЛ:ПОЛЬЗОВАТЕЛЯМ. +++++++++++++++++++++++++++++++ О ПРОГРАММЕ 'СЖАТИЕ'. ОПЫТ ИСПОЛЬЗОВАНИЯ ЭТОЙ ПРОГРАМ МЫ ПОКАЗЫВАЕТ,ЧТО ПОЛНОЙ КОМПРЕ ССИИ ТЕКСТОВ ОНА НЕ ПРОИЗВОДИТ. ПЕРЕД КАЖДОЙ МНЕМОНИЧЕСКОЙ КОМА НДЫ ОСТАЕТСЯ ОДИН ПРОБЕЛ,И ЕСЛИ ЕГО УБРАТЬ,ТО МОЖНО СЭКОНОМИТЬ ЕЩЕ 1О% ОБъЕМА ТЕКСТА,ЧТО ДЛЯ БОЛЬШИХ ПРОГРАММ НЕПЛОХО.АДРЕС ТЕКСТОВОГО БУФЕРА ЗАПИСАН В ЯЧЕ ЙКАХ СОО1 И СОО2,А АДРЕСС ВЫХО- ДА ПОСЛЕ ОКОНЧАНИЯ КОМПРЕССИ-В ЯЧЕЙКАХ СОО1,СОО2.ЕСЛИ ТЕКСТО- ВЫЙ БУФЕР РАСПОЛОЖЕН ПО ДРУГИМ АДРЕСАМ ИЛИ ПО ЗАВЕРШЕНИИ КОМП- РЕССИИ ИСХОДНОГО ТЕКСТА НУЖНО ПЕРЕХОДИТЬ НЕ В ASSEMBLER,ТО СОДЕРЖИМОЕ ЭТИХ ЯЧЕЕК СЛЕДУЕТ ИЗМЕНИТЬ.КОДЫ ПРОГРАММЫ: 21 ОО 7О 54 5D О6 OD 7Е FE 27 С2 16 11 12 1З 2З 7Е FE 27 С2 OD 11 FE ЗВ С2 22 11 2З 7Е FE OD С2 1В 11 FE OD СА 2С 11 FE 2О С2 З1 11 В8 С2 З1 11 1В 12 47 1З 2З FE FF С2 О7 11 С9 ИСХОДНЫЙ ТЕКСТ ДИЗАССЕМБЛИРУЕ- МОЙ ПРОГРАММЫ ПРИВЕДЕН НИЖЕ.ПРИ НЦИПЫ РАБОТЫ ПРОСТЫ,ПОЭТОМУ ТРЕ БУЕТСЯ ЛИШЬ НЕКОТОРОЕ ПОЯСНЕНИЕ В БЛОКЕ НАЧАЛЬНОЙ УСТАНОВКИ В РЕГИСТРАХ HL И DE ЗАПИСЫВАЕТСЯ АДРЕСС НАЧАЛА ОБРАБОТКИ ТЕКСТА, В НАШЕМ СЛУЧАЕ ОН РАВЕН 7ОООН. В РЕГИСТРЕ В,В КОТОРОМ В ПРОЦЕС СЕ РАБОТЫ ПРОГРАММ ХРАНИТСЯ ЗНА ЧЕНИЕ БАЙТА,ПРЕДШЕСТВУЕЩЕГО АНА ЛИЗИРУЕМОГО,ЗАПИСЫВАЕТСЯ OD,ТО ЕСТЬ ENTER.НА ПЕРВОМ ЭТАПЕ АНА- ЛИЗА ВЫЯСНЯЕТСЯ,ЯВЛЯЕТСЯ ЛИ СЛЕ ДУЮЩИЙ ТЕКСТ СООБЩЕНИЕМ (ПО НА- ШИМ ПРИЗНАКАМ СООБЩЕНИЕ-АПОСТ- РОФ);ЕСЛИ ЭТО ТАК,ТО ОН БЕЗ ИЗ- МЕНЕНИЯ ПЕРЕНОСИТСЯ В НОВЫЙ ТЕК СТ ПРОГРАММЫ,ЕСЛИ ЖЕ ДАЛЕЕ ИДЕТ НЕ СООБЩЕНИЕ,ТО ОСУЩЕСТВЛЯЕТСЯ ПЕРЕХОД К СЛЕДУЮЩЕЙ СТАДИИ ОБРА БОТКИ.ПРЕЖДЕ ВСЕГО УСЛОВНАЯ ПРО ВЕРКА НАЛИЧИЕ ; И ЕСЛИ РЕЗУЛЬ- ТАТ ПОЛОЖИТЕЛЬНЫЙ-ОНА ИЗ ТЕКСТА ПРОГРАММЫ ИСКЛЮЧАЕТСЯ,А ЕСЛИ ОТРИЦАТЕЛЬНЫЙ-ТО АНАЛИЗ ПРОДОЛ- ЖАЕТСЯ ВПЛОТЬ ДО ОКОНЧАНИЯ ИСХО ДНОГО ТЕКСТА. ORG 49152 LD HL,TEXBUF LD D,Н LD Е,L LD В,#OD BEGIN LD А,(HL) СР #27 JR NZ,СОМ ТЕХТ LD (DE),А INC DE INC HL LD А,(HL) СР #27 JR NZ,ТЕХТ СОМ СР #ЗВ JR NZ,ENTER СММ INC HL LD А,(HL) СР #OD JR NZ,СММ ENTER СР #OD JR NZ,ENTER2 СР #2О JR NZ,LLЗ LD А,В СР #2С JR Z,МЗ СР #ЗА JR Z,МЗ ENTER2 LD А,В СР #OD JR Z,МЗ JP LLЧ LLЗ СР #2С JR Z,LLS СР #ЗА JR NZ,DR LLS LD А,В LLЧ СР #2О JR NZ,LLб DEC DE LLб LD А,(HL) DR LD (DE),А LD В,А INC DE МЗ INC HL СР #FF JR NZ,BEGIN RET TEXBUF EQU #7ООО ПРИМЕР ОБРАБОТАННОЙ ПРОГРАММОЙ 'СЖАТИЯ': ORG 49152 LD HL,TEXBUF LD D,Н LD Е,L LD В,#OD BEGIN LD А,(HL) СР #27 JR NZ,СОМ ТЕХТ LD (DE),А INC DE INC HL LD А,(HL) СР #27 JR NZ,ТЕХТ СОМ СР #ЗВ JR NZ,ENTER СММ INC HL LD А,(HL) СР #OD JR NZ,СММ *******************************
Other articles:
|
|
|
|
|
|
|
|
|
Similar articles:
В этот день... 21 November