Ассемблер с нуля. Часть 15. Процедуры (функции).

Процедуры в ассемблере.

Процедуры в ассемблере мы рассмотрим на примере нашей программы goblin.com. Сразу определимся, что понятия: процедура, функция, подпрограмма в языках программирования, включая ассемблер, являются синонимами и обозначают одно и то же. Именно в качестве равнозначных синонимов мы будем использовать эти названия.

Подробнее «Ассемблер с нуля. Часть 15. Процедуры (функции).»

Ассемблер с нуля. Часть 14. Turbo Debugger.

Отладчик ассемблера Turbo Debugger.

Применим усвоенные понятия на практике — прогоним нашу крохотную программу prg.com через отладчик ассемблера Turbo Debugger  (TD). Именноо TD мы будем использовать в изучении 16 битного ассемблера. Для 32 и 64 битного программирования имеется свое програмное обеспечение. Вместе с тем, для своих целей Turbo Debugger очень хорош. Работать с программой просто и понятно — ничего лишнего — то, что нужно для начинающих.

Подробнее «Ассемблер с нуля. Часть 14. Turbo Debugger.»

Ассемблер с нуля. Часть 12. Указатель.

Понятие указателя.

Понятие указателя (pointer) — одно из самых важных в программировании. Для начинающего програмиста просто необходимо его понять и усвоить. Попробуем разобраться, что это такое и зачем он нужен.

Процесор работает с памятью. Минимально возможное значение памяти — 1 бит (bit). Память воспринимается машиной блочно. Один минимальный блок равен одному байту (byte), 1 байт = 8 бит (bit — минимальная адресуемая единица памяти).

Подробнее «Ассемблер с нуля. Часть 12. Указатель.»

Ассемблер с нуля. Часть 11. Регистры.

Регистры процессора.

Процессор работает с данными. Обрабатываемые данные содержаться в оперативной памяти, куда считываются с жёсткого диска. Для того, чтобы ими манипулировать, а также верно организовывать свою работу по их обработке — выполнению программного кода, у процессора имеется система, построенная на небольших, но очень быстрых блоках памяти — регистров. Регистры процессора — это входящие непосредственно в процессор блоки памяти.

Подробнее «Ассемблер с нуля. Часть 11. Регистры.»

Ассемблер с нуля. Часть 10. Данные.

Данные в ассемблере.

Данные в ассемблере — понятие широкое. Программу в целом можно воспринимать как одну большую совокупность данных, однако мы уже знаем и помним, что она состоит из данных и кода — набора команд, необходимых для обработки данных.

Подробнее «Ассемблер с нуля. Часть 10. Данные.»

Ассемблер с нуля. Часть 9. Системы счисления.

Три системы счисления.

Практическое программирование на ассемблере требует понимания системы счисления. Систем счисления существует бесконечное множество. Наиболее знакомая для нас — десятичная система счисления. Римская нумерация циферблата часов демонстрирует нам двенадцатеричную систему счисления. Программистам на ассемблере необходимо освоить три системы счисления : десятичную, двоичную и шестнадцатеричную.

Подробнее «Ассемблер с нуля. Часть 9. Системы счисления.»

Ассемблер с нуля. Часть 7. Анализ кода.

Анализ программного кода «Hello World!» на ассемблере.

Проведем анализ программного кода нашей первой программы на ассемблере.

Подробнее «Ассемблер с нуля. Часть 7. Анализ кода.»