SoftCraft
разноликое программирование

Top.Mail.Ru

Информация об архитектуре и Ассемблере процессоров Intel


Начальная страница курса

Общие сведения об архитектуре


  1. Сведения по Ассемблеру с несложными примерами. Есть информация по инструкциям арифметического сопроцессора (FPU)
  2. Методические указания к лабораторным работам (Основы языка ассемблера) 2005 г.
  3. Сайт, посвященый программированию на ассемблере
  4. Вычисление с контролем циклически избыточным кодом (CRC - Cyclical Redundancy Check)

Netwide Assembler (NASM)


NASM. Статья в википедии

NASM. Книги

  1. Йо Ван Гуй. Программирование на ассемблере x64: от начального уровня до профессионального использования AVX / пер. с анг. А.В. Снастина. – М.: ДМК Пресс, 2021. – 332 с.
  2. Столяров А.В. Программирование на языке ассемблера NASM для ОС Unix: Уч. пособие, 2-е изд. - М.: МАКС Пресс, 2011. - 188 с.
  3. Jo Van Hoey. Beginning x64 Assembly Programming: From Novice to AVX Professional. - APESS, 2019. - ISBN-13 (pbk): 978-1-4842-5075-4

NASM. Основы программирования + Школа ассемблера

  1. Начинаем программировать на языке ассемблера. Часть 1: Преодолеваем ограничения высокоуровневых языков программирования и разбираемся, как на самом деле работает центральный процессор
  2. Школа ассемблера: условные инструкции, циклы и библиотеки. Часть 2: Начинаем писать полноценные программы и создаем свою собственную библиотеку полезных подпрограмм
  3. Начинаем программировать на языке ассемблера: переход на уровень аппаратного обеспечения. Часть 3: Пришло время попрощаться с операционной системой и использовать собственный код для загрузки компьютера
  4. Школа ассемблера: разработка операционной системы. Часть 4: Располагая навыками, полученными в ходе чтения предыдущих статей серии, вы можете приступить к разработке своей собственной операционной системы
  5. Школа ассемблера: расширение возможностей разработанной операционной системы. Часть 5: Завершаем серию статей, реализуя доступный пользовательским приложениям механизм системных вызовов, такой же, как и в популярных операционных системах

NASM. Журнал “Хакер”. Погружение в ассемблер (MS DOS)

  1. Погружение в ассемблер. Зачем учить ассемблер в 2020 году
  2. Погружение в assembler. Полный курс по программированию на асме от ][
  3. Погружение в ассемблер. Делаем первые шаги в освоении асма
  4. Погружение в ассемблер. Осваиваем арифметические инструкции
  5. Погружение в ассемблер. Как работают переменные, режимы адресации, инструкции условного перехода
  6. Погружение в ассемблер. Учимся работать с памятью
  7. Погружение в ассемблер. Ра­бота­ем с боль­шими чис­лами и дела­ем слож­ные матема­тичес­кие вычис­ления
  8. Погружение в ассемблер. Сок­раща­ем раз­мер прог­раммы
  9. Floppy Bird. Пишем на ассемблере клон игры Flappy Bird, который уместится в бутсектор
  10. МикроБ. Пишем бейсик на ассемблере и умещаем в 512 байт

NASM. Интернет. Разное

  1. Столяров А.В. Программирование: введение в профессию. II: низкоуровневое программирование
  2. Столяров А.В. Программирование на языке ассемблера NASM для ОС Unix
  3. Введение в Ассемблер

Macro Assembler (MASM)


MASM. Статья в википедии

  1. Фрагмент лекций по архитектуре x86 с примерами на masm
  2. Ассемблер для начинающих. Примеры простых программ

Flat Assembler (FASM)


FASM. Статья в википедии

FASM. Книги

  1. Даниэль Куссвюрм. Профессиональное программирование на ассемблере x64 с расширениями AVX, AVX2 и AVX-512 / пер. с анг. В.С. Яценкова. – М.: ДМК Пресс, 2021. – 628 с.
  2. Аблязов Р. 3. Программирование на ассемблере на платформе х86-64. - М.: ДМ К Пресс, 2011. - 304 с
  3. Alexey Lyashko. Mastering Assembly Programming. Packt Publishing, 2017. ISBN 978-1-78728-748-8

FASM. Интернет

  1. Сайт разработчиков FASM (DOS, Windows, Linux, Unix, ARM)
  2. Программирование на FASM для Windows (простые примеры)
  3. "Дневники ча́йника" - примеры программирования на FASM
  4. Пример программы в FASM: вывод на консоль текстового файла в Win32
  5. Flat Assembler — инструмент разработчика (плюсы и и минусы FASM)
  6. Flat Assembler 1.64. Мануал программеа
  7. Flat Assembler 1.71. Мануал программера
  8. Понимание FASM
  9. Мануал по flat assembler
  10. Программирование на языке Assembler в FASM (Архив WASM.RU):
  11. Макросы и директивы компилятора FASM — Архив WASM.RU
  12. Руководство по препроцессору FASM
  13. Учебник TAJGA FASM
  14. Компилирование шестнадцатиразрядных программ с помощью fasm
  15. Сравнение MASM и FASM на самом простом примере для начинающих Программистов
  16. Пишем Hello World на FASM

FASM. Каналы на youtube

Канал "Byte++". Уроки, посвященные программированию на fasm под windows

  1. FASM. Установка FASM. Структура программы на ассемблере. Урок 1
  2. FASM. Калькулятор на ассемблере. Метки, циклы, условные переходы. Установка FASM
  3. FASM. Данные в FASM. Стек, память, регистры. Биты, байты слова. Урок 2
  4. FASM. add, sub, mul, div, neg. Арифметика ассемблер. Урок 3
  5. FASM. Команды сдвига. ror, rol, shl, shr. Битовый сдвиг. Урок 4
  6. FASM. Логический тип данных. Логические команды or, xor, and, not, test. Урок 5

Канал "Программист". Видео, посвященные программированию на fasm под windows

  1. Природа информации / 1. Информация и числа в компьютере / Программирование с нуля
  2. Бит, байт и т.д. / 2. Информация и числа в компьютере / Программирование с нуля
  3. Как это работает? / 3. Информация и числа в компьютере / Программирование с нуля
  4. К слову... / 4. Информация и числа в компьютере / Программирование с нуля
  5. Предисловие! / 1. Введение в ассемблер / Программирование с нуля
  6. Что такое регистры и прерывания / 2. Введение в ассемблер / Программирование с нуля
  7. Прерывание DOS / 3. Введение в ассемблер - 21h / Программирование с нуля
  8. FASM подробно: Hello, world! / 4. Введение в ассемблер / Программирование с нуля
  9. Стек / 1. Ассемблер и процедуры / Программирование с нуля
  10. Функции / 2. Ассемблер и процедуры / Программирование с нуля
  11. CALL function / 3. Ассемблер и процедуры / Программирование с нуля
  12. Параметры функции (сложно) / 4. Ассемблер и процедуры / Программирование с нуля
  13. Функции "второго уровня" / 5. Ассемблер и процедуры / Программирование с нуля
  14. Вычитание в процессоре / 1. Условные операторы / Программирование с нуля
  15. Если, то... / 2. Условные операторы / Программирование с нуля

Канал "CryptoFun [ IT ]". Видео, посвященные программированию на fasm под linux

  1. // Язык Ассемблера #1 [FASM, Linux, x86-64] //
  2. // Язык Ассемблера #2 [FASM, Linux, x86-64] //
  3. // Язык Ассемблера #3 [FASM, Linux, x86-64] //
  4. // Язык Ассемблера #4 [FASM, Linux, x86-64] //
  5. // Язык Ассемблера #5 [FASM, Linux, x86-64] //
  6. // Язык Ассемблера #6 [FASM, Linux, x86-64] //
  7. // Язык Ассемблера #7 [FASM, Linux, x86-64] //
  8. // Язык Ассемблера #8 [FASM, Linux, x86-64] //
  9. // Язык Ассемблера #9 [FASM, Linux, x86-64] //
  10. // Язык Ассемблера #10 [FASM, Linux, x86-64] //

Канал "CryptoFun [ IT ]". Видео, посвященные реализации алгоритмов (не только на fasm но и на C)

  1. // Алгоритмизация #1 // Интерпретатор обратной польской записи //
  2. // Алгоритмизация #2 // Интерпретатор LISP выражений //
  3. // Алгоритмизация #3 // Рекурсивные функции //
  4. // Алгоритмизация #4 // Длинная арифметика //
  5. // Алгоритмизация #5 // Односвязный список //
  6. // Алгоритмизация #6 // Двоичное дерево //
  7. // Алгоритмизация #7 // Хеш-таблица //
  8. // Алгоритмизация #8 // Виртуальная машина //

Канал "Tomasz Grysztar". Introduction to x86 assembly (Windows)

  1. Introduction to x86 assembly, part 1: MOVing numbers around
  2. Introduction to x86 assembly, part 2: ADDing and SUBtracting, with a few JuMPs
  3. Introduction to x86 assembly, part 3: The stack
  4. Introduction to x86 assembly, part 4: Calling conventions
  5. Introduction to x86 assembly, part 5: CoMParing numbers
  6. Introduction to x86 assembly, part 6: Interpreting binary values, signed and unsigned numbers
  7. Introduction to x86 assembly, part 7: Accessing array with SIB addressing
  8. Introduction to x86 assembly, part 8: Little-endianness and bit operations
  9. Introduction to x86 assembly, part 9: Shifting and rotating
  10. Introduction to x86 assembly, part 10: MULtiplication and DIVision
  11. Introduction to x86 assembly, part 11: 64-bit mode and calling convention

Канал "Tomasz Grysztar". How to use flat assembler (fasm)

  1. How to download and set up flat assembler (fasm)
  2. How to experiment with assembly instructions (fasm and OllyDbg)
  3. How to experiment with 64-bit assembly instructions (fasm and x64dbg)
  4. How to use fasm in DOS
  5. How to set up fasmg on Windows
  6. 8051 example with fasmg

Канал "Philip Bohun". fasm - lessons

  1. Fasm 0 part a — Introduction
  2. Fasm 0 part b - Registers, Memory, and the Control Unit
  3. Fasm 1 - String Length
  4. Fasm 2 - Print Strings and Include Files
  5. Fasm 3 - Read From stdin

Канал "Михаил Ремизов". Пишем трейнер на Ассемблере

  1. [gamehacking] FASM - Учимся работать с горячими клавишами
  2. [gamehacking] Дописываем трейнер - работа с указателями
  3. [gamehacking] Пишем трейнер на ассемблере - часть третья
  4. [gamehacking] Изучаем fasm - часть 1

Turbo Assembler (TASM)


TASM. Статья в википедии

TASM. Интернет

  1. Лекции по архитектуре x86 с примерами на tasm
  2. Assembler & Win32. Курс молодого бойца

GNU Assembler (GAS)


GAS. Статья в википедии

GAS. Книги

  1. Гагарина Л. Г., Кононова А. И. Архитектура вычислительных систем и Ассемблер с приложением методических указаний к лабораторным работам. Учебное пособие. — М.: СОЛОН-Пресс, 2019. - 368 с.

GAS. Интернет

  1. Ассемблер в Linux для программистов C
  2. Использование GNU ассемблера as
  3. Написание и отладка кода на ассемблере x86/x64 в Linux
  4. Ассемблеры для Linux: Сравнение GAS и NASM

Начальная страница курса