Руководство по ассемблеру



Полезности

Управление потоком

Нужно думать не о том, что нам может приго­диться, а только о том, без чего мы не сможем обойтись. Джером К. Джером. Трое в лодке, не считая собаки В этой главе пойдет речь именно о том, без чего большинство программистов может обойтись. (читать далее...)
стр. 0 1 2 3 4 5 6 7 8 9 10 11 12

Круженье

Кроме директив, помогающих программе ветвиться, есть еще директивы, органи­зующие циклы. Мы уже встречались с циклами, заданными инструкцией loop. Теперь попробуем заменить loop в листинге 4.3 (читать далее...)
стр. 13 14 15 16 17

Макросы

В программах часто повторяются одни и те же фрагменты, такие, например, как завершение работы в системе DOS: mov ah. 4ch ;завершить программу int 21h Смысл этих строк довольно туманен, да и выписывать их каждый раз не хочет­ся. (читать далее...)
стр. 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Структуры

В разделе «Круженье битов» главы 5 мы были чрезмерно скупы, решив уместить дату всего в шестнадцати битах, за что пришлось расплачиваться сложным досту­пом к отдельным ее элементам и возможностью хранить только две последние цифры года. (читать далее...)
стр. 32 33 34 35 36 37 38 39

Typedef и венгерская нотация

В отличие от слова struct директива typedef не создает новые типы данных, а лишь позволяет иначе назвать типы уже существующие. Привыкшим к назва­ниям переменных, принятым в языке Си, понравится объявлять байт или по­следовательность байтов словом CHAR. (читать далее...)
стр. 40 41 42 43 44 45 46 47 48 49

Окна

Сообщения

Чужие мысли читать не умею, хочешь выйти — нажми на кнопку. Объявление в маршрутном такси Между операционной системой Windows и шофером маршрутного такси есть не­сомненное сходство. И та и другой ничего не ждут, а лишь отвечают на возник­шие сообщения. (читать далее...)
стр. 50 51 52 53 54 55 56 57

Создание окна

Познакомившись с обработкой сообщений, пора переходить к их источнику и цели — окну. Насмотревшись на разные окна в программах, легко предполо­жить, что структура, хранящая различные их признаки, будет гораздо сложнее, чем структура для сообщений. (читать далее...)
стр. 58 59 60 61 62 63

Создание окна

Познакомившись с обработкой сообщений, пора переходить к их источнику и цели — окну. Насмотревшись на разные окна в программах, легко предполо­жить, что структура, хранящая различные их признаки, будет гораздо сложнее, чем структура для сообщений. (читать далее...)
стр. 64 65 66 67 68 69 70 71 72 73 74

Первое окно

Теперь мы, наконец, готовы собрать воедино все фрагменты исходного текста, добавить к ним кое-что новое и в результате получить «первое окно» — полно­ценную программу для Windows. Правда, делать это придется в другом тексто­вом редакторе, например в Блокноте, потому что русские буквы в консоль­ных и «оконных» приложениях Windows (читать далее...)
стр. 75 76 77 78 79 80 81 82 83 84

Испытание окна

Чтобы посмотреть, как наша первая программа обрабатывает сообщение WM_DESTROY, скомпилируем ее особым, предназначенным для оконной программы командным файлом wmake.bat: ml /с /coff "И (читать далее...)
стр. 85 86 87 88 89 90 91

WM PAINT

.data Hello db "He могу молчать".0 WndProc proc hWnd:HWND. uMsg:UINT. wParam:WPARAM.\ lParam:LPARAM LOCAL hdc:HDC LOCAL ps:PAINTSTRUCT LOCAL rect:RECT .IF uMsgMWM_DESTROY invoke PostQuitMessage.N (читать далее...)
стр. 92 93 94 95 96 97 98

Меню

Эти программы сильно отличаются от наших, игрушечных, — прежде всего нали­чием меню, которое управляет их работой, меняет режимы, задает параметры и т. д. Поэтому стоит приблизиться к серьезному программированию еще на один шаг и самим научиться создавать меню. (читать далее...)
стр. 99 100 101 102 103 104 105 106 107 108 109 110 111

Ассемблер и другие языки

В этой короткой главе пойдет речь о месте ассемблера в программировании. До сих пор мы писали программы целиком на ассемблере, потому что эта книга по­священа именно ему. Но в реальной жизни так поступают только самые «упер­тые» фанатики, не желающие знать (а зачастую и не знающие) других языков. (читать далее...)
стр. 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129