0

2815

0
Автор публикации grifin85

На чем мы остановились?

В прошлой статье были рассмотрены основы Win32 ASM программирования, основы создания игр, и сам процесс разработки. Пришло время зайти немного дальше. Сначала я расскажу о высокоуровневых конструкциях MASM, которые являются удобоваримыми в сравнительном смысле с аналогичными конструкциями на Си. Затем рассмотрим основной цикл и главные оконные процедуры. После чего обратим внимание на Direct Draw и вызовы связанные с ним. Поняв, как это работает, мы сможем построить свою собственную Direct Draw Library, после чего построим свою bitmap file library и в конце напишем программу, которая отображает экран 'Loading Game' и выходит из нее по нажатию клавиши Esc.

Читать дальше...

0

3919

0
Автор публикации grifin85

Я уверен, что многие из вас, уже задумывались о создании игр. Многие из вас провели немало часов в интернете, в поисках какой-либо информации о том, как писать игры на чистом ассемблере. Но, к сожалению, такой информации почти нет, а тем более на русском. Я думаю, что этот туториал пополнит ряды русскоязычной документации и надеюсь, что он вам понравится.

Читать дальше...

0

2187

0
Автор публикации grifin85

Среди устройств и узлов, входящих в состав компьютера, наиболее важными для выполнения любой программы катаются оперативная память и центральный микропроцессор, который мы для краткости будем в дальнейшем называть просто процессором. В оперативной памяти хранится выполняемая программа вместе с принадлежащими ей данными; процессор выполняет вычисления и другие действия, описанные в программе.

Читать дальше...

0

2210

0
Автор публикации grifin85

Ассемблер называют самым низкоуровневым языком. Некоторые говорят, что писать на нём программы дано только гуру программирования. Может оно и так, но эти статьи о другом. Эти статьи про программирования без использования такой возможности компилятора, как “мнемоники”. Речь идёт про написания кода с помощью директив db (define byte), dw, (define word) и dd (define double-word).

Читать дальше...

0

2423

0
Автор публикации grifin85

Как уже отмечалось, при разработке 16-разрядных программ реального режима, предназначенных для выполнения по управлением операционной системы MS-DOS, вполне допустимо использование ряда дополнительных возможностей 32-разрядных процессоров. В реальном режиме можно использовать:

Читать дальше...

0

2363

0
Автор публикации grifin85

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

Читать дальше...

0

3187

0
Автор публикации grifin85

Рассмотрим, как в памяти компьютера хранятся данные.

Вообще, как компьютер может хранить, например, слово "диск"? Главный принцип - намагничивание и размагничивание одной дорожки (назовем ее так). Одна микросхема памяти - это, грубо говоря, огромное количество дорожек. Сейчас попробуем разобраться. Например:

Читать дальше...

0

2186

0
Автор публикации grifin85

Так сказать DISCLAIMER

Вся информация, представленная в данной статье несет только информативные цели. Автор не несет ответственности за некорректное использование приведённых ниже фактов.

Читать дальше...

0

2860

0
Автор публикации grifin85

Порт 3F8h.

Этот порт соответствует регистру передавемых данных. Для передачи в порт 3F8h необходимо записать байт передаваемых данных. После приема данных от внешнего устройства они могут быть прочитаны из этого порта. В зависимости от состояния бита управляющего слова, выводимого в управ- ляющий регистр с адресом 3F8h, назначение порта 3F8h изменяться. Если этот бит равен 0,порт используется для записи передаваемых данных.Если же этот бит равен 1, порт используется для вывода значения младшего байта делителя частоты тактового генератора. Изменяя содержимое делите- ля, можно изменять скорость передачи данных. Старший байт делителя записывается в порт 3F9h. Зависимост скорости передачи данных от значе- ния делителя частоты приведины в таблице 1:

Читать дальше...