Win32asm обучение


Урок 1 - Ассемблер - часть 2


Ассемблер MASM - около 3 kb

Так, что смотрите и делайте выводы, что лучше использовать.

Есть другое различие с некоторыми языками высокого уровня, это использование runtime DLL библиотек для их функций. Например, Visual C++ имеет библиотеку msvcrt.dll которая содержит стандартные С функции. В большинстве случаев, это работает хорошо, но иногда возникают проблемы с версиями dll. У пользователя всегда должны быть установленны эти DLL-библиотеки (что не всегда бывает). Для Visual C это не проблема, они устанавливаются вместе с windows.

Visual Basic даже не преобразовывает свой язык в ассемблер (хотя версия 5 и выше делают это частично, но не полностью), это сильно зависит от msvbvm50.dll, виртуальной машины Visual Basic. Exe файл, который создан VB состоит из простых частей кода и многих вызовов этой DLL. Вот почему VB очень медленный. Ассемблер это и есть самый быстрый язык. Он использует только системные DLL: kernel32.dll, user32.dll, и т.д.


Другое непонимание в том, что многие люди думают, что на ассемблере невозможно программировать. Безусловно, это сложно, но очень даже возможно. Создавать большие проекты на ассемблере, это довольно сложно, я использую его для создания маленьких программ, DLL библиотек и частей кода, где требуется скорость. Также, есть большое различие между DOS и Windows программами. DOS программы мспользуют прерывание как 'функции'. Подобно int 10 для видео, int 13 для доступа к файлам и т.д. В win, есть API, приложения программирующие интерфейс. Этот интерфейс состоит из функций, которые вы можете использовать в своих программах. В DOS программах, прерывания имеют номер прерывания и номер функции. В Win, API функции имеют только имена (например: MessageBox, CreateWindowEx). Вы можете импортировать библиотеки (DLL) и использовать функции внутри них. Это облегчает программирование на ассемблере. Подробнее об этом в следующих уроках.

[наверх]





- Начало -  - Назад -  - Вперед -



Книжный магазин