Jump to content

А86 (программное обеспечение)

(Перенаправлено из D86 (отладчик) )
А86
Разработчик(и) Эрик Айзексон
Стабильная версия
4.05 / 14 января 2000 г.
Операционная система MS-DOS
Платформа х86
Тип Ассемблер
Лицензия Собственный
Веб-сайт использовал /а86

A86 ассемблер MS -DOS , который генерирует код для Intel x86 семейства микропроцессоров . Написанная Эриком Айзексоном, она впервые стала доступна как условно-бесплатная программа в июне 1986 года. Ассемблер содержится в одном исполняемом файле размером 32 КБ и может напрямую создавать COM-файл или объектный файл для использования со стандартным компоновщиком . Он поставляется отладчиком D86 с . [ 1 ] [ 2 ]

Поддерживая ожидаемый синтаксис x86, A86 в некоторых случаях допускает более простые сокращения и не требует директив , таких как ASSUME, SEGMENT, и PROC, на который полагаются Microsoft Macro Assembler и другие современники. Скорость сборки является основным преимуществом. Айзексон утверждал, что A86 может собирать 100 000 строк исходного кода в секунду на процессоре Pentium II или выше. [ 3 ]

A86 и D86 предназначены для 16-битных платформ x86. Исааксон добавил поддержку 32-битных систем в середине 1990-х годов в виде A386 и D386 . [ 1 ] [ 2 ] Они не распространялись как условно-бесплатные, а предоставлялись пользователям, зарегистрировавшим A86. Семейство продуктов A86 никогда не портировалось на Microsoft Windows , но можно использовать объектные файлы, созданные A386, с компоновщиком Windows. [ 4 ] Ассемблер не поддерживает 64-битный код.

Особенности A86

[ редактировать ]

Любая метка, состоящая из одной буквы, за которой следуют одна или несколько цифр, является локальной и может быть переопределена по мере необходимости, при этом каждое определение заменяет предыдущее. В инструкции рекомендуется использовать L1 через L9 для обычного кода и M1 через M9 в макросах . Предполагается, что ответвления к локальным меткам являются обратными, но прямая ветвь может быть указана путем добавления к ссылке на метку префикса с символом «больше» (например, >L2).

Числа, начинающиеся с нуля, являются шестнадцатеричными , например 00FF, вместо использования префикса, такого как «0x» или «$». Завершающая буква «K» указывает на кибибайты . [ 5 ] 16K то же самое, что 16*1024 или 16384.

Несколько регистров могут быть помещены или извлечены в одну и ту же исходную строку. push eax, edx, ebp генерирует одну инструкцию для каждого из трех операндов .

Существует сокращение для условного выполнения одной инструкции. if z mov ax,bx выводит две инструкции: условный переход, за которым следует перемещение.

Если ret указан как метка условного перехода, он автоматически нацеливается на инструкцию возврата в пределах 8-битного диапазона перехода (например, jz ret).

Макросы используют другой синтаксис, чем современные ассемблеры.

Отпечаток кода

[ редактировать ]

Ассемблер был разработан для использования определенных кодировок инструкций, которые функционально эквивалентны, но вместе создают отпечаток пальца, встроенный в исполняемый файл . Об этом говорится в разделе «Юридические термины» руководства. Отпечаток пальца позволяет определить, был ли код собран с помощью A86, а также отличить зарегистрированные и незарегистрированные версии ассемблера. Этот анализ требует доступа к исходному коду . [ 6 ]

  1. ^ Jump up to: а б Исааксон, Эрик (2008). «Ассемблер A86/A386 и отладчик D86/D386» . Архивировано из оригинала 2 июля 2008 года . Проверено 2 июля 2008 г.
  2. ^ Jump up to: а б Рэндалл Хайд. «Какой ассемблер лучший?» . Архивировано из оригинала 15 мая 2008 года . Проверено 18 мая 2008 г.
  3. ^ Исааксон, Эрик (2006). «Функции A86/A386 и D86/D386» .
  4. ^ Исааксон, Эрик (2006). «Программирование A386 и Win32» .
  5. ^ Хейг, Джеймс (20 июля 2008 г.). «Килобайтовые константы: простая и красивая идея, которая так и не прижилась» . Программирование в XXI веке .
  6. ^ Эль-Халил, Ракан; Керомити, Ангелос Д. (2004). «Хидан: сокрытие информации в двоичных файлах программы» (PDF) . В Лопесе, Хавьер; Цин, Сихан; Окамото, Эйдзи (ред.). Информационная и коммуникационная безопасность: 6-я Международная конференция ICICS 2004, Малага, Испания, 27–29 октября 2004 г.: Материалы . Конспекты лекций по информатике. Том. 3269. Спрингер . п. 190. ИСБН  3-540-23563-9 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d1f3d7163e9b917ded80d3b6e2a3099a__1711934400
URL1:https://arc.ask3.ru/arc/aa/d1/9a/d1f3d7163e9b917ded80d3b6e2a3099a.html
Заголовок, (Title) документа по адресу, URL1:
A86 (software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)