Что такое МАСМ?который мы обычно используем для изучения кода на ассемблере? - PullRequest
4 голосов
/ 19 января 2011

В процессоре 8086 мы используем разные микросхемы ... я думаю, что они 16-битные ... но мы практикуем код на 64-битных компьютерах ... как это возможно? Пожалуйста, expalin >>>> Что такое МаСм на самом деле ?? и можете ли вы объяснить мне, где я могу получить программное обеспечение ....

Ответы [ 4 ]

3 голосов
/ 19 января 2011

MASM - это Microsoft Macro Assembler.Это ассемблер.Он берет ваш код, предварительно обрабатывает его и преобразует в двоичный файл.Связывает его с исполняемым исполняемым файлом или файлом OBJect.

все процессоры Intel 32-битные и em64t-процессоры (80386 и выше) поддерживают режим совместимости 8086, называемый «реальный режим».Это означает, что все ПК по сей день обратно совместимы с, скажем, MS-DOS и всеми играми, которые раньше работали на IBM XT.Они будут работать на современных машинах, но очень быстро, поэтому они не будут воспроизводиться: -)

Все компьютеры по сей день загружаются с процессором в реальном режиме, а современные операционные системы переключают процессор на 32-битную / 64-битную "защищенный режим ".

По сути, в реальном режиме процессор знает, что он работает как 8086. Например, все операции выполняются в 16-битных регистрах, а память адресована парой сегмент: смещение.Адреса памяти являются адресами физической памяти, и у вас есть доступ к первым 1 МБ ОЗУ.Физический адрес рассчитывается по сегменту, сдвинутому влево на 4 бита + смещение.Таким образом, 8000h: 100h - это тот же адрес, что и 8010h: 0h, физический адрес в памяти - 80100h.

Некоторые современные машины имеют EFI вместо BIOS и загружаются в «защищенном режиме» с самого начала.MAC-машины такие.

2 голосов
/ 19 января 2011

MASM - это макроассемблер Microsoft. Microsoft Assembler выпускается с 1981 года и обновляется корпорацией Microsoft, чтобы быть в курсе потребностей операционной системы и процессоров. для проблем совместимости проверьте это

можно загрузить с здесь

1 голос
/ 12 апреля 2013

Отв.MASM: Microsoft Macro Assembler Microsoft Macro Assembler (MASM) - это ассемблер для семейства микропроцессоров x86, изначально производимых операционной системой Microsoft MS-DOS.Он поддерживал широкий спектр макроэкономических возможностей и структурных идиом программирования, включая высокоуровневые конструкции для циклического выполнения, вызова процедур и чередования (поэтому MASM является примером высокоуровневого ассемблера).В более поздних версиях появилась возможность создавать программы для операционных систем Windows, которые были выпущены для последующего выпуска из MS-DOS.MASM - один из немногих инструментов разработки Microsoft, для которого не было отдельных 16-битных и 32-битных версий.Ассемблер предоставляет программисту, ищущему дополнительную производительность, трехэтапный подход к решениям, основанным на производительности.MASM может создавать очень маленькие высокопроизводительные исполняемые файлы, которые хорошо подходят там, где важны размер и скорость.Когда для других языков требуется дополнительная производительность, MASM может повысить производительность этих языков с помощью небольших быстрых и мощных динамических библиотек.Для программистов, работающих в Microsoft Visual C / C ++, MASM создает модули и библиотеки в одном формате, поэтому программист C / C ++ может создавать модули или библиотеки в MASM и напрямую связывать их в свои собственные программы на C / C ++.Это позволяет программисту C / C ++ нацеливать критические области своего кода очень эффективным и удобным способом, манипулированием графикой, играми, очень высокой скоростью обработки и обработки данных, синтаксическим анализом на скоростях, которые большинство программистов никогда не видели, шифрованием, сжатием и другимидругая форма обработки информации, которая интенсивно использует процессор.

0 голосов
/ 19 января 2011

MASM расшифровывается как «microsoft макро ассемблер». В современных (32- и 64-битных) есть так называемый «реальный режим», который поддерживает 16- и даже 8-битный регистр для обратной совместимости. По сути, процессор «эмулирует» старый, поэтому программы, разработанные для этого процессора, будут работать даже на более новых. Для MASM просто спросите Google.
Я предлагаю вам использовать Easy Code с MASM. Это IDE, позволяющая создавать исполняемые файлы win32 с использованием языка ассемблера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...