Юров в и assembler новое издание.

23.11.2006

Книга представляет собой учебник для ВУЗов, удобренный Министерством Образования Российской Федерации в качестве учебного пособия для высших учебных заведений.

Книга посвящена вопросам программирования на языке Ассемблер для процессоров фирмы Intel.

Автор освещает в учебнике следующие фундаментальные темы: организация современного компьютера, устройство процессоров семейства IA-32, система счисления, синтаксис Ассемблера, макросредства, программирование типовых управляющих структур, сложные структуры данных, модульное программирование.

В книге достаточно подробно описаны многие команды языка: команды передачи управления, команды обмена данными, арифметические и логические команды, цепочечные команды.

Особое место в учебнике занимают разделы: создание Windows приложений на Ассемблере, архитектура и программирование сопроцессора.

Материал книги оснащен множеством примеров с подробными объяснениями.

Учебник написан простым и легким для восприятия языком.

Издание: 2-е издание
Издательство: Питер
Год издания: 2003

Скачано: 16512 раз

Купить бумажную версию

Скачать книгу

Комментарии

Артём , 10.04.2011 15:45

"Учебник написан простым и легким для восприятия языком" - это совсем не так, наоборот больше похоже на справочник, много воды, не советую эту книгу


Smith , 23.06.2011 03:19

Эта книга фуфло, изучать по ней программирование на ассемблере, все равно что учиться играть на скрипке по руководству по ремонту автомобилей.


reboot , 30.10.2011 09:34

Артём, в справочнике нет воды, сами себе противоречите Smith, по этой книге можно научиться кодить на асме, но вам наверное лучше начинать с нопки пыщь на яву или вообще идите в менеджеры сотиками торгуйте


Rolex , 14.01.2012 08:14

Учебник не плох... Вы просто не учли что его нельзя использовать без второй книги (дополнения) В. И. Юров - Ассемблер Практикум........)))


сергей , 19.02.2012 05:49

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


Laplandian , 12.06.2012 13:40

В. Н. Пильщиков Assembler. Программирование на языке ассемблера IBM PC. Вот хороший учебник для начинающих.


Orest , 10.09.2012 20:24

Книга нормальная, воды хватает, но лучшего учебника просто нету. Нигде системно не подаеться материал


Фёдоров , 23.09.2012 12:13

Книга мне понравилась.Все доступно и понятно.Большое спасибо автору.


прохожий , 28.10.2012 07:59


Евгений , 06.12.2012 21:23


Хоо , 05.03.2013 14:26

Хороший учебник


Дмитрий , 15.06.2013 08:37

Нет, учебник не хороший. Много размытых понятий, куча необъясненных терминов. Если я не знаю что обозначает тот или иной термин значит я должен играть в угадайку или каждые 5 секунд открывать гугл? А обещали что понять сможет начинающий. В общем, много нервов было потрачено, пока этот учеьник не был прочитан от и до. Крайне не советую, читайте Абеля


Иван , 21.06.2013 09:28

Если для вас это непонятный учебник, то может вы занялись не своим? Идите поросят растить, сиськи коровам дергать., быкам хвосты заносить. В колхозпаевский мозг не асма а самогон только лезет. Каждый пусть занимается своим делом.


Дмитрий , 05.07.2013 04:05

Посмотрим, что за книга


Артур Иванов , 12.07.2013 13:50

Насчет быкам хвосты заносить и каждый пусть сам занимается своим делом, так вот я преподавал спецкурс ассемблера в Петрозаводском ГУ. И в плане занятия своим делом скажу, что книга Юрова это пример того как НЕ надо преподавать ассемблер. Студенту слишком много навоза приходится загрузить в свою голову прежде чем он хоть что-то напишет. Учебник должен начинаться с примеров простейших программ и даже фрагментов кода с объяснениями, а справочную информацию нужно кидать в его конец. А то, что приведено в качестве первой программы у Юрова это ужас какой-то - она не COM, а EXE, чтобы студент, который еще ничего не умеет писать, непонимающе таращил глаза на все эти segment para public "data" и assume. Я давал это так - шапка для COM-программы такая-то, научитесь сначала писать, а что значит эта шапка будете разбираться потом. Вы будете писать и отлаживать и в этом процессе понимать все больше и больше. А в книге Юрова форматы инструкций процессора с битовыми полями mod r/m даны ДО примера первой программы!!! Он вообще "на отъ%бись" учебник писал что-ли, педагог хренов? Битовые поля формата инструкций вообще нужны только для написания дизассемблера. Как можно эту ненужную хрень давать до примера первой программы? Короче, книга Юрова есть не учебник, а справочник и то хреновый. В нем что не надо сказано, а про COM-программы не сказано вообще.


Сергей , 06.11.2013 08:12

Иван, 21.06.2013 09:28, А не вы ли этим и занимаетесь, я смотрю у вас глубокие познания. Я знаю 5 языков программирования, но понятия не имею что значит быкам хвосты заносить)))))))))))А на счет автора, ИМХО ему лучше было бы писать учебники по истории нежели пытаться учить технарей, таких бездарей как он еще поискать надо. Я несколько раз проходил мимо этого учебника только из за надписи для ВУЗов и в очередной раз не ошибся в нашей бездарной системе образования


Алесандр , 28.11.2013 13:42

новичкам советую Питер Абель


Bor , 12.03.2014 17:45

Ругают нормальную литературу... Чувствую те кто пишут пасквили про книгу огорчены тем что ничего не могут понять наспех пролистав от начала до конца... не прочитав толком и разобрав ни одного примера самостоятельно.


fluent , 23.06.2014 19:34

Bor, почитайте: Джон Мотон програмирование AVR, там выкладка предмета по другому, но это больше для схемотехников.


G.O. , 23.01.2015 00:55

Да я да я - напишите лучше! Асемблер разноплановый язык, есть ася для Real Mode, есть MASM для Win API с отличными титориалами iczelion, есть для микроконтроллеров, заточки для драйверов, FASM со своими приколами и т.д. Книга - УЧЕБНИК, может воды хватает, но такой стиль жанра. Нормуль, книженция


Дмитро , 19.02.2015 01:15

Спасибі!! Підручник викачав і перегорнув. Я школяр, але у мене вже є розірвані знання асемблера.Упевнений що книга як довідник згодиться. насправді складно викачати нормальні книги з асемблера!Я дві години терзав гугл. Торент у мене щось не ставиться. Та я і не хочу ніякого додаткового устаткування. Далі що ні сайт- посилання на кудись, де треба чекати хвилину, а після цього книга не знайдена! Чи посилання на скачку экзешника з книгой- я чотири рази після скачування отримував экзешник. Я не приймаю формат файлів.exe . Нормальний розум не може зрозуміти необхідність завантаження экзешника що значно перевищує формат книги. Невже так складно просто викласти книгу, в архиві або без архиву? Формат.exe з усією неминучістю має на увазі, що одночасно з постачанням книги на комп"ютері стануться непередбачені диї- буде поставлено невідомо що, змінені будь-які налаштування скажемо реєстру виндовса або браузерів і так далі і тому подібне


Dimon0014 , 25.05.2015 03:17

Нормальная книга. Есть системный подход. Единственно начинается книга свирепо во второй главе автор пытается объяснить в пару слов то что у Э. Таненбаума заняло целую книгу "Архитектура компьютера." Думаю на этой главе он потерял не одного читателя. Мой совет прочтите лучше Э. Таненбаума чем вторую главу у Юрова


Serg , 03.07.2015 14:10

Не надо таких книг. Такие учебники могут только отпугнуть любого начинающего. Сколько ненужной воды - просто ужас. Это писали для академиков что ли? Больше похож на справочник по ассемблеру чем на учебник. Новичкам и вообще всем советую - старую, добрую книжку Питера Абеля. Еще наши отцы по нему учились, в те времена, когда еще были настоящие тру-программисты, а не говнокодеры...


Дмитрий , 07.03.2016 17:47

Я в 15 лет с этой книгой вечера просиживал, потом ещё с «практикумом». И без всяких гуглов, в то время интернет был по модему и далеко не у всех в провинции. Ругают, видимо, и правда те, кто ничего не понял и не поймёт никогда.


Sergey , 02.05.2017 18:52

Книгу ещё не читал, по этому будет отзыв по комментариям. Умный человек поймёт и по плохому учебнику,вот только на разбор урока у него уйдёт не 1-2 часа, а сутки то есть будет не эффективная трата времени(ИМХО)


Ml64 , 19.10.2017 01:07

"Я в 15 лет с этой книгой вечера просиживал, потом ещё с «практикумом»." И я! Это были времена CRT-мониторов, Pentium II/III, Windows 98/Me/2000, коммутируемого доступа и почасовых/помегабайтных тарифов. Сейчас книга устарела. DOS и TASM перешли в категорию legacy. Но книги Юрова были прекрасны для своего времени! Тогда учились именно так. Собирали знания по крупицам. А по современным 64-битным ассемблерам (ml64, UASM, fasm) русскоязычных книг такого масштаба просто нет. Аблязов до Юрова не дотягивает. Ждём от Пирогова. А может быть, кто-то ещё проведёт такую системную работу. Хотя таких тёплых ламповых книг больше не будет. Простите за сентиментальность


cmdprompt , 23.03.2019 00:12

Книга действительно была лучшей в 2003м без интернета. Год потратил на теорию, прежде чем начать писать под windows на масме, но по моему мнению не зря потратил время. Советую всем думающим прочитать.


Sheraz , 28.04.2019 09:44

Может книга и не так плоха,не стану ни с кем спорить или кому-то что-то доказывать,но лично мне нравится другая книга этого автора в соавторстве с Хорошенко С.,называется "Assembler.Учебный курс" 1999 года.Она останется актуальной,поскольку в компьютерных технологиях совместимость идёт снизу вверх,что значит то,что сведения приведённые в более старых учебниках будут справедливы и для новых технологий,хотя и нельзя исключать того,что чего-то из нового там не будет,но это уже из раздела саморазвития,а книге,приведённой мною база...например,гуглите информацию по нужному вам процессору и изучаете её,учебная литература не успеет за технологиями,база будет всегда актуальна,а развитие-оно в постижении новых технологий по технической документации.)))

Assembler. Учебник для вузов. Юров В.И.

2-е изд. - СПб.: 2003. - 637 с.

В учебнике рассматриваются вопросы программирования на языке ассемблера для компьютеров на базе микропроцессоров фирмы Intel. Основу книги составляет материал, являющийся частью курса, читаемого автором в высшем учебном заведении и посвященного вопросам системного программирования. По сравнению с первым изданием учебник существенно переработан. Исправлены ошибки и неточности. Добавлено описание команд для Intel-совместимых процессоров (до Pentium IV включительно). Книга будет полезна студентам вузов, программистам и всем желающим изучить язык Assembler. Допущено Министерством образования Российской Федерации в качестве учебного пособия для студентов высших учебных заведении, обучающихся по направлению подготовки дипломированных специалистов «Информатика и вычислительная техника».

Формат: pdf

Размер: 14,3Мб

Скачать: docs.google.com

СОДЕРЖАНИЕ
Предисловие 13
Благодарности 16
От издательства 16
Глава 1. Организация современного компьютера 17
Машинный язык и язык ассемблера 18
История процессоров Intel 21
Итоги 24
Глава 2. Программно-аппаратная архитектура IA-32
процессоров Intel 26
Архитектура ЭВМ 27
Архитектура IA-32 29
Варианты микроархитектуры процессоров Intel 30
Программная модель IA-32 40
Итоги 56
Глава 3. Система команд процессора IA-32 58
Формат машинных команд IA-32 59
Поле префиксов 61
Код операци и 63
Байт режима адресации mod г/т 64
Байт масштаба, индекса и базы 70
Поля смещения и непосредственного операнда 71
Функциональная классификация машинных команд 72
Итоги 73
Глава 4. Системы счисления 74
Двоичная система счисления 75
Шестнадцатеричная система счисления 76
Десятичная система счисления 77
Перевод чисел из одной системы счисления в другую 78
Перевод в десятичную систему счисления 78
Перевод в двоичную систему счисления 78
Перевод в шестнадцатеричную систему счисления 79
Перевод дробных чисел 80
Перевод чисел со знаком 83
Итоги 84
Глава 5. Синтаксис ассемблера 85
Синтаксис ассемблера 86
Операнды 90
Операнды-выражения 97
Директивы сегментации 103
Простые типы данных ассемблера 110
Итоги 119
Глава 6. Первая программа 121
Жизненный цикл программы 121
Пример простой программы 123
Процесс разработки программы 128
Трансляция программы 129
Компоновка программы 134
Отладка программы 135
Особенности разработки программ в MASM 141
Особенности разработки программ в Microsoft Visual Studio 142
Выбор пакета ассемблера 143
Итоги 144
Глава 7. Команды обмена данными 146
Пересылка данных 147
Ввод из порта и вывод в порт. 149
Работа с адресами и указателями 156
Преобразование данных 158
Работа со стеком 160
Итоги 164
Глава 8. Арифметические команды 165
Обзор 165
Целые двоичные числа 167
Десятичные числа 168
Арифметические операции над целыми двоичными числами 170
Сложение двоичных чисел без знака 170
Сложение двоичных чисел со знаком 172
Вычитание двоичных чисел без знака 173
Вычитание двоичных чисел со знаком 175
Вычитание и сложение операндов большой размерности 176
Умножение двоичных чисел без знака 177
Умножение двоичных чисел со знаком 179
Деление двоичных чисел без знака 179
Деление двоичных чисел со знаком 180
Вспомогательные команды для арифметических вычислений 181
Команды преобразования типов 181
Другие полезные команды 183
Арифметические операции над двоично-десятичными числами 183
Неупакованные BCD-числа 184
Упакованные BCD-числа 190
Итоги 192
Глава 9. Логические команды и команды сдвига 193
Логические данные 194
Логические команды 195
Команды сдвига 199
Линейный сдвиг 199
Циклический сдвиг. 201
Дополнительные команды сдвига 203
Примеры работы с битовыми строками 205
Рассогласование битовых строк 205
Вставка битовых строк 206
Извлечение битовых строк 207
Пересылка битов 207
Итоги 207
Глава 10. Команды передачи управления 209
Безусловные переходы 214
Команда безусловного перехода 215
Процедуры 219
Условные переходы 224
Команда сравнения 225
Команды условного перехода и флаги 227
Команды условного перехода и регистр ЕСХ/СХ 228
Установка байта по условию 229
Организация циклов 229
Ограничение области видимости для меток 234
Итоги 235
Глава 11 .Программирование типовых управляющих структур 236
Условный оператор if-else. 237
Оператор выбора switch 237
Операторы цикла 240
Оператор цикла с предусловием while 240
Операторы continue и break 240
Оператор цикла с постусловием do-while 241
Оператор итерационного цикла for 241
Особенности пакета MASM 242
Условная конструкция.IF 242
Циклическая конструкция.REPEAT 243
Циклическая конструкция.WHILE 244
Конструкции.BREAKи.CONTINUE 244
Комплексный пример 245
Итоги 248
Глава 12. Цепочечные команды 249
Пересылка цепочек 253
Команда MOVS 253
Пересылка байтов, слов и двойных слов 254
Сравнение цепочек 255
Команда CMPS 255
Сравнение байтов, слов и двойных слов 258
Сканирование цепочек, 259
Команда SCAS 259
Сканирование строки байтов, слов, двойных слов 260
Загрузка элемента цепочки в аккумулятор 261
Команда LODS 261
Загрузка в регистр AL/AX/EAX байтов, слов, двойных слов 262
Перенос элемента из аккумулятора в цепочку. 262
Команда STOS 263
Сохранение в цепочке байта, слова, двойного слова
из регистра AL/AX/EAX 264
Работас портами ввода-вывода 265
Ввод элемента цепочки из порта ввода-вывода 265
Вывод элемента цепочки в порт ввода-вывода 265
Итоги 266
Глава 13. Сложные структуры данных 268
Массивы 269
Описание и инициализация массива в программе 269
Доступ кэлементам массива 271
Двухмерные массивы 275
Типовые операции с массивами 278
Структуры 280
Описание шаблона структуры 281
Определение данных с типом структуры 281
Методы работы со структурами 282
Объединения 284
Записи 286
Описание записи 286
Определение экземпляра записи 287
Работа с записями 288
Дополнительные возможности обработки 290
Итоги 292
Глава 14. Макросредства языка ассемблера 293
Псевдооператоры EQU и = 295
Макрокоманды 297
Макродирективы 305
Директивы WHILE и REPT 305
Директива IRP 307
Директива IRPC 307
Директивы условной компиляции " 308
Директивы компиляции по условию 308
Директивы генерации ошибок 315
Константные выражения в условных директивах 318
Дополнительные средства управления трансляцией 319
Директивы управления файлом листинга 321
Итоги 322
Глава 15. Модульное программирование 324
Структурное программирование 325
Процедуры в языке ассемблера 327
Передача аргументов через регистры 331
Передача аргументов через общую область памяти 332
Передача аргументов через стек 334
Использование директив EXTRN и PUBLIC 337
Возврат результата из процедуры 340
Связь ассемблера с языками высокого уровня 344
Встраиваемый ассемблерный код 345
Внешний ассемблерный код 346
Команды ENTER и LEAVE 356
С и ассемблер. 359
Итоги 364
Глава 16. Создание Windows-приложений на ассемблере 365
Программирование оконных Windows-приложений 367
Каркасное Windows-приложение на C/C++ 368
Каркасное Windows-приложение на ассемблере 379
Стартовый код 387
Главная функция 389
Обработка сообщений в оконной функции 398
Средства TASM для разработки Windows-приложений 401
Углубленное программирование на ассемблере для Win32 404
Ресурсы Windows-приложений на языке ассемблера 406
Меню в Windows-приложениях 406
Перерисовка изображения 413
Окна диалога в Windows-приложениях 420
Программирование консольных Windows-приложений 435
Минимальная программа консольного приложения 437
Организация высокоуровневого консольного ввода-вывода 438
Пример программы консольного ввода-вывода 440
Итоги 446
Глава 17. Архитектура и программирование сопроцессора 447
Архитектура сопроцессора 448
Регистр состояния SWR 453
Регистр управления CWR 454
Регистр тегов TWR 455
Форматы данных 456
Двоичные целые числа 457
Упакованные целые десятичные числа 457
Вещественные числа 458
Специальные численные значения 463
Система команд сопроцессора 466
Команды передачи данных 468
Команды загрузки констант 471
Команды сравнения данных 472
Арифметические команды 474
Команды трансцендентных функций 482
Команды управления сопроцессором 494
Исключения сопроцессора и их обработка 500
Недействительная операция 501
Деление на ноль 501
Денормализация операнда 501
Переполнение и антипереполнение 502
Неточный результат. 502
Немаскируемая обработка исключений 502
Использование отладчика 505
Общие рекомендации по программированию сопроцессора 507
Итоги 508
Вместо заключения 510
Приложение. Система команд процессоров IA-32 511
Целочисленные команды 513
Команды сопроцессора 553
Команды блока М MX 569
Команды блока ХММ (SSE и SSE2) 587
Список литературы. 625
Алфавитный указатель 626

В учебнике рассматриваются вопросы программирования на языке ассемблера для компьютеров на базе микропроцессоров фирмы Intel. Основу книги составляет материал, являющийся частью курса, читаемого автором в высшем учебном заведении и посвященного вопросам системного программирования. По сравнению с первым изданием учебник существенно переработан. Исправлены ошибки и неточности. Добавлено описание команд для Intel-совместимых процессоров (до Pentium IV включительно).
Книга будет полезна студентам ВУЗов, программистам и всем желающим изучить язык Assembler.
Допущено Министерством образования Российской Федерации в качестве учебного пособия для студентов высших учебных заведении, обучающихся по направлению подготовки дипломированных специалистов «Информатика и вычислительная техника».

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

Когда мы рассматривали сегментные регистры, то отмечали, что для процессоров Intel, начиная с i8086, принят особый подход к управлению памятью. Каждая программа в общем случае может состоять из любого количества сегментов, но непосредственный доступ она имеет только к трем основным сегментам (кода, данных и стека), а также к дополнительным сегментам данных числом от одного до трех. Программа никогда не знает, по каким физическим адресам будут размещены ее сегменты. Этим занимается операционная система. Операционная система размещает сегменты программы в оперативной памяти по определенным физическим адресам, после чего помещает значения этих адресов в определенные места.

Куда именно, зависит от режима работы процессора. Так, в реальном режиме эти адреса помещаются непосредственно в соответствующие сегментные регистры, а в защищенном режиме они размещаются в элементы специальной системной дескрипторной таблицы. Внутри сегмента программа обращается к адресам относительно начала сегмента линейно, то есть начиная с 0 и заканчивая адресом, равным размеру сегмента. Этот относительный адрес, или смещение, который процессор использует для доступа к данным внутри сегмента, называется эффективным.

Содержание
Предисловие
Благодарности
От издательства
Глава 1. Организация современного компьютера
Глава 2. Программно-аппаратная архитектура IA-32 процессоров Intel
Глава 3. Система команд процессора IA-32
Глава 4. Системы счисления
Глава 5. Синтаксис ассемблера
Глава 6. Первая программа
Глава 7. Команды обмена данными
Глава 8. Арифметические команды
Глава 9. Логические команды и команды сдвига
Глава 10. Команды передачи управления
Глава 11. Программирование типовых управляющих структур
Глава 12. Цепочечные команды
Глава 13. Сложные структуры данных
Глава 14. Макросредства языка ассемблера
Глава 15. Модульное программирование
Глава 16. Создание Windows-приложений на ассемблере
Глава 17. Архитектура и программирование сопроцессора
Вместо заключения
Приложение. Система команд процессоров IA-32
Список литературы
Алфавитный указатель.


Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Assembler, Юров В.И., 2003 - fileskachat.com, быстрое и бесплатное скачивание.

Скачать pdf
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России.

В. Юров ASSEMBLER В учебнике рассматриваются вопросы программирования на языке ассемблера для компьютеров на базе микропроцессоров фирмы Intel. Основу книги составляет материал, являющийся частью курса, читаемого автором в высшем учебном заведении и посвященного вопросам системного программирования. По сравнению с предыдущей книгой автора - «Assembler: учебный курс», книга существенно переработана. В нее добавлены разделы, посвященные программированию под Windows, и описанию команд процессоров Pentium III. К книге прилагается дискета, которая содержит все листинги программ, рассматриваемых в учебнике, и соответствующий пояснительный материал. Для студентов вузов, программистов и всех желающих изучить язык Assembler. Краткое содержание Предисловие 9 Урок 1. Общие сведения об ЭВМ 14 Урок 2. Архитектура персонального компьютера 26 Урок 3. Простая программа на ассемблере 57 Урок 4. Жизненный цикл программы на ассемблере 66 Урок 5. Структура программы на ассемблере 86 Урок 6. Система команд микропроцессора 111 Урок 7. Команды обмена данными 133 Урок 8. Арифметические команды 153 Урок 9. Логические команды 184 Урок 10. Команды передачи управления 202 Урок 11. Цепочечные команды 229 Урок 12. Сложные структуры данных 250 Урок 13. Макросредства языка ассемблера 278 Урок 14. Модульное программирование 310 Урок 15. Прерывания 353 Урок 16. Защищенный режим работы микропроцессора 380 Урок 17. Обработка прерываний в защищенном режиме. 404 Урок 18. Создание Windows-приложений на ассемблере 419 Урок 19. Архитектура и программирование сопроцессора 500 Урок 20. ММХ-технология микропроцессоров Intel 564 Вместо заключения 623 Содержание Предисловие 9 Урок 1. Общие сведения об ЭВМ 14 Урок 2. Архитектура персонального компьютера 26 Архитектура ЭВМ 27 Набор регистров 38 Организация памяти 46 Типы данных 51 Формат команд 54 Обработка прерываний 55 Урок 3. Простая программа на ассемблере 57 Урок 4. Жизненный цикл программы на ассемблере 66 Трансляция программы 71 Компоновка программы 77 Отладка программы 79 Утилита МАКЕ 83 Урок 5. Структура программы на ассемблере 86 Синтаксис ассемблера 88 Директивы сегментации 98 Простые типы данных ассемблера 105 Урок 6. Система команд микропроцессора 111 Системы счисления 112 Двоичная система счисления 113 Шестнадцатеричная система счисления 114 Десятичная система счисления 116 Перевод чисел из одной системы счисления в другую 116 Перевод в десятичную систему счисления 116 Перевод в двоичную систему счисления 116 Перевод в шестнадцатеричную систему счисления 117 Перевод дробных чисел 118 Числа со знаком 121 Структура машинной команды 123 Способы задания операндов команды 126 Функциональная классификация машинных команд 131 Урок 7. Команды обмена данными 133 Пересылка данных 135 Ввод-вывод в порт 137 Работа с адресами и указателями 143 Преобразование данных 145 Работа со стеком 147 Урок 8. Арифметические команды 153 Общий обзор 154 Целые двоичные числа 155 Десятичные числа 157 Арифметические операции над целыми двоичными числами 159 Сложение двоичных чисел без знака 159 Сложение двоичных чисел со знаком 160 Вычитание двоичных чисел без знака 162 Вычитание двоичных чисел со знаком 164 Вычитание и сложение операндов большой размерности 165 Умножение двоичных чисел без знака 166 Умножение двоичных чисел со знаком 168 Деление двоичных чисел без знака 168 Деление двоичных чисел со знаком 170 Вспомогательные команды для целочисленных операций 170 Команды преобразования типов 170 Другие полезные команды 172 Арифметические операции над двоично-десятичными числами 173 Неупакованные BCD-числа 174 Упакованные BCD-числа 180 Урок 9. Логические команды 184 Логические данные 186 Логические команды 187 Команды сдвига 191 Линейный сдвиг 192 Циклический сдвиг 194 Дополнительные команды сдвига 196 Примеры работы с битовыми строками 198 Рассогласование битовых строк 198 Вставка битовых строк 199 Извлечение битовых строк 200 Пересылка битов 200 Урок 10. Команды передачи управления 202 Безусловные переходы 208 Команда безусловного перехода jmp 208 Процедуры 212 Условные переходы 217 Команда сравнения cmp 218 Команды условного перехода и флаги 220 Команды условного перехода и регистр ecx/cx 222 Организация циклов 222 Урок 11. Цепочечные команды 229 Пересылка цепочек 233 Команда movs 234 Команды пересылки байтов, слов и двойных слов 235 Сравнение цепочек 236 Команда cmps 236 Команды сравнения байтов, слов и двойных слов 239 Сканирование цепочек 239 Команда scas 240 Сканирование строки байтов, слов, двойных слов 242 Загрузка элемента цепочки в аккумулятор 242 Команда lods 242 Загрузка в регистр al/ax/eax байтов, слов, двойных слов 244 Перенос элемента из аккумулятора в цепочку 244 Команда stos 244 Сохранение в цепочке байта, слова, двойного слова из регистра 246 al/ax/eax Ввод элемента цепочки из порта ввода-вывода 247 Вывод элемента цепочки в порт ввода-вывода 247 Урок 12. Сложные структуры данных 250 Массивы 252 Описание и инициализация массива в программе 252 Доступ к элементам массива 254 Типовые операции с массивами 261 Структуры 264 Описание шаблона структуры 265 Определение данных с типом структуры 265 Методы работы со структурой 266 Объединения 268 Записи 270 Описание записи 271 Определение экземпляра записи 271 Работа с записями 273 Дополнительные возможности обработки 275 Урок 13. Макросредства языка ассемблера 278 Псевдооператоры equ и = 280 Макрокоманды 283 Макродирективы 291 Директивы WHILE и REPT 292 Директива IRP 293 Директива IRPC 294 Директивы условной компиляции 294 Директивы компиляции по условию 295 Директивы генерации ошибок 302 Константные выражения в условных директивах 305 Дополнительное управление трансляцией 307 Урок 14. Модульное программирование 310 Технологии программирования 311 Структурное программирование 312 Концепция модульного программирования 313 Процедуры в языке ассемблера 315 Организация интерфейса с процедурой 317 Связь ассемблера с языками высокого уровня 330 Связь Pascal-ассемблер 333 Команды enter и leave 343 Связь С-ассемблер 346 Урок 15. Прерывания 353 Контроллер прерываний 357 Программирование контроллера прерываний 18259А 362 ICW1 - определить особенности последовательности приказов 363 ICW2 - определение базового адреса 363 ICW3 - связь контроллеров 364 ICW4 - дополнительные особенности обработки прерываний 366 OCW1 - управление регистром масок IMR 366 OCW2 - управление приоритетом 366 OCW3 - общее управление контроллером 367 Каскадирование микросхем i8259A 368 Реальный режим работы микропроцессора 369 Обработка прерываний в реальном режиме 371 Урок 16. Защищенный режим работы микропроцессора 380 Системные регистры микропроцессора 382 Регистры управления 383 Регистры системных адресов 384 Регистры отладки 385 Структуры данных защищенного режима 386 Пример программы защищенного режима 391 Подготовка таблиц глобальных дескрипторов GDT 392 Запрет обработки аппаратных прерываний 397 Переключение микропроцессора в защищенный режим 398 Работа в защищенном режиме 399 Переключение микропроцессора в реальный режим 401 Разрешение прерываний 402 Стандартное для MS-DOS завершение работы программы 402 Урок 17. Обработка прерываний в защищенном режиме 404 Шлюз ловушки 411 Шлюз прерывания 412 Шлюз задачи 413 Инициализация таблицы IDT 415 Обработчики прерываний 416 Программирование контроллера прерываний 8259А 416 Загрузка регистра IDTR 417 Урок 18. Создание Windows-приложений на ассемблере 419 Каркасное Windows-приложение на C/C++ 423 Каркасное Windows-приложение на ассемблере 435 Стартовый код (строки 54-73) 445 Главная функция (строки 74-162) 447 Обработка сообщений в оконной функции 456 Средства TASM для разработки Windows-приложений 459 Углубленное программирование на ассемблере для Win32 462 Ресурсы Windows-приложений на языке ассемблера 463 Меню в Windows-приложениях 464 Перерисовка изображения 472 Окна диалога в Windows-приложениях 480 Урок 19. Архитектура и программирование сопроцессора 500 Архитектура сопроцессора 502 Регистр состояния swr 507 Регистр управления cwr 508 Регистр тегов twr 509 Форматы данных 509 Двоичные целые числа 510 Упакованные целые десятичные (BCD) числа 511 Вещественные числа 512 Специальные численные значения 516 Система команд сопроцессора 520 Команды передачи данных 522 Команды загрузки констант 525 Команды сравнения данных 525 Арифметические команды 528 Команды трансцендентных функций 537 Команды управления сопроцессором 549 Исключения сопроцессора и их обработка 554 Исключение недействительная операция 555 Деление на ноль 556 Денормализация операнда 556 Переполнение и антипереполнение 556 Неточный результат 556 Немаскируемая обработка исключений 557 Использование отладчика 559 Общие рекомендации по программированию сопроцессора 561 Урок 20. ММХ-технология микропроцессоров Intel 564 MMX-расширение архитектуры микропроцессора Pentium 566 Модель целочисленного MMX-расширения 566 Особенности команд MMX-расширение 568 Система команд 574 Отладка программ 578 Пример применения ММХ-технологии 593 Дополнительные целочисленные ММХ-команды (Pentium III) 606 ХММ-расширение архитектуры микропроцессора Pentium 608 Модель ХММ-расширения 609 Система команд 611 Вместо заключения 623