Найти в Дзене
Old Programmer

Язык ассемблера (x86-64, Linux). Путеводитель по ресурсам канала Old Programmer

Оглавление

Весь мой канал Old Programmer о программировании и программистах представлен по темам здесь.

О моих ресурсах по языку ассемблер

А в данной статье собраны ссылки на мои материалы по ассемблеру в Linux 64. Ассемблер это красиво, это здорово. Когда ты программируешь на ассемблере, то ощущаешь себя творцом, способным дергать за самые тонкие и скрытые ниточки операционных систем и компьютеров. Напомню, что во всех статьях я использую GNU Assembler (GAS) с синтаксисом AT&T.

Представленный список материалов об ассемблере будет динамически пополняться с появлением новых материалов.

Данные материалы будут положены в основу будущей книги по языку ассемблера GAS.

Рисунок в прямом доступе в Интернет
Рисунок в прямом доступе в Интернет

Assembler для Linux (материалы из книги)

Глава 1

  • Ассемблер для Linux (материалы книги). Введение
  • Ассемблер для Linux (материалы книги). Параграф 1.1.
  • Ассемблер для Linux (материалы книги). Параграф 1.2
  • Ассемблеры платформы x86. Не большой обзор. Параграф 1.3
  • Ассемблер для Linux (Первые программы для Linux на GNU Assembler). Параграф 1.4.
  • Ассемблер для Linux (материалы книги). Для начала Hello, world! Параграф 1.5.
  • Язык ассемблера. Системы счисления. Параграф 1.6
  • Об ассемблере. Представление чисел в компьютере. Параграф 1.7
  • Завещание старых мастеров. Ассемблер. Параграф 1.8

Глава 2

  • Ассемблер для Linux. Архитектура x86-64 для прикладного программиста. Параграф 2.1.
  • GNU Assembler для Linux. Операции с ячейками памяти. Параграф 2.2.
  • Ассемблер для Linux. Системные вызовы. Параграф 2.3.
  • Ассемблер для Linux. Стандартный ввод-вывод. Параграф 2.4
  • Числа и строки. Ассемблер. Параграф 2.5.
  • Стек. Ассемблер GAS. Linux. Параграф 2.6.
  • Функции в ассемблере. Параграф 2.7.
  • Функции в ассемблере. Передача параметров через стек. Параграф 2.8.
  • Функции в ассемблере. Передача параметров через регистры в 64-битовых системах. Параграф 2.9.
  • Функции в ассемблере x86-64. Локальные переменные. Параграф 2.10.
  • Функции в ассемблере x86-64. Пример полнофункциональной программа. Параграф 2.11.
  • Функции в ассемблере x86-64. Локальные переменные. Пример рекурсивной функции. Параграф 2.12.

Глава 3.

  • Ассемблер GAS. Адресация x86-64. Параграф 3.1
  • Ассемблер для Linux. Строковые операции. Параграф 3.2
  • Ассемблер x86-64 GAS. Условные конструкции Параграф 3.3
  • GNU assembler. Условные конструкции. Параграф 3.4.
  • Ассемблер GAS, x86-64 Linux. Стандартные арифметические команды. Параграф 3.5
  • Ассемблер GAS, x86-64. Битовые и логические операции (книга) Параграф 3.6
  • Ассемблер GAS, x86-64. Команды для работы с числами с плавающей точкой (книга) Параграф 3.7
  • Ассемблер GAS, x86-64. Примеры с числами с плавающей точкой (книга) Параграф 3.8
  • Ассемблер x86-64, GAS. Расширения процессора (книга). Параграф 3.9

Глава 4.

  • Ассемблер x86-64, GAS. Открытие файла, чтение из файла (книга) Параграф 4.1
  • Ассемблер x86-64, GAS. Запись в файл, копирование (книга). Параграф 4.2
  • Ассемблер GAS (x86-64). Текстовые файлы (книга). Параграф 4.3
  • Ассемблер GAS (x86-64). Перемещение внутри файла (книга). Параграф 4.4
  • Ассемблер GAS , x86-64, Linux. Программное изменение режимов доступа к файлам и папкам (книга) Параграф 4.5
  • Ассемблер для Linux. Удаление и переименование файлов (книга) Параграф 4.6
  • Ассемблер для Windows. Создание и удаление каталогов (книга) Параграф 4.7
  • Ассемблер для Linux. Параметры командной строки (книга) Параграф 4.8
  • Ассемблер для Linux. Пример с параметром в командной строке (книга) Параграф 4.9
  • Ассемблер для Linux (GAS). Программа чтения содержимого каталога (книга)

Глава 5.

  • Программирование на языке ассемблера в Linux (GAS). Статическая глобальная память (книга)
  • Программирование на ассемблере GAS (Linux). Стековая память. (книга)
  • Программирование на GAS, Linux x86-64. Выделение динамической памяти (книга)
  • Программирование на ассемблере GAS (Linux 64). Файлы, отображаемые в память, функция mmap (книга)
  • Программирование на GAS в Linux x86-64. Использование функции mmap для динамического выделения памяти (книга)

Глава 6.

  • Программирование на GAS в Linux x86-64. Объектные модули и их объединение(книга)
  • Программирование на языке ассемблера в Linux 64. Компилирование с помощью программы gcc (книга)
  • Ассемблер GAS. Использование стандартных библиотечных функций C и доступ к параметрам командной строки (книга)
  • Программирование на ассемблере GAS в Linux x86-64. Создание статических библиотек (книга)
  • Программирование на ассемблере Ассемблер GAS в Linux x86-64. Использование ассемблерного кода в языках высокого уровня (книга)
  • Программирование на ассемблере GAS в Linux x86-64. Создание динамических библиотек (книга)
  • Программирование на ассемблере GAS. Использование кода на высокоуровневых языках в программе на языке ассемблера (книга)

Глава 7.

  • Программирование на ассемблере GAS Linux x86-64. Запуск процессов (книга)
  • Программирование на ассемблере GAS Linux x86-64. Создание процессов, функция fork (книга)
  • Программирование на GNU assembler Linux x86-64. Ожидание конца работы дочернего процесса, wait (книга)
  • Программирование на GNU ассемблере Linux x86-64. Получение списка строк окружения процесса (книга)
  • Программирование на ассемблере в Linux. Взаимодействие процессов. Разделяемая память (книга)
  • Программирование на ассемблере в Linux. Использование pipe для взаимодействия процессов (книга)
  • Программирование на ассемблере в Linux. Семафоры (книга)

Приложения

  • Ассемблер GAS , x86-64. Приложение 1 (книга)
  • Ассемблер GAS , x86-64. Приложение 2 (книга)
  • Ассемблер GAS , x86-64. Приложение 3 (книга)

Мои ресурсы на канале по языку ассемблер для Linux (GNU assembler x86-64)

  • Из записок старого программиста. Завещание старых мастеров. Ассемблер
  • Ассемблер на платформе x86-64, Linux, программирование. Статья 1 (регистры, syscall)
  • Программирование на ассемблере для Linux (консольный ввод-вывод). Статья 2
  • Программирование на ассемблере (преобразование целого числа в строку). Статья 3
  • Программирование на ассемблере (преобразование строки в число). Статья 4
  • Программирование на ассемблере (стек). Статья 5
  • Программирование на ассемблере (стек, подпрограмма, передача параметров). Статья 6
  • Программирование на ассемблере (передача параметров в 64-х битовых системах). Статья 7
  • Зачем нужно изучать ассемблер (assembler forever)
  • Программирование на ассемблере. Статья 8 (объединение объектных модулей)
  • Программирование на ассемблере. Статья 9 (ассемблер и C)
  • Программирование на ассемблере. Статья 10 (ассемблер и C)
  • Программирование на ассемблере. Статья 11 (ассемблер и C)
  • Программирование на ассемблере. Статья 12 (ассемблер и C)
  • Программирование на ассемблере. Статья 13 (адресация)
  • Программирование на ассемблере. Статья 14 (адресация с масштабированием)
  • Ассемблер и C, пример эксперимента по сравнению производительности
  • Язык C. Функция с переменным числом параметров
  • Язык C. Функция с переменным числом параметров. Вариант решения
  • Ассемблерный код программ на языке C (интрига продолжается)
  • Ассемблерный код программ на языке C (интрига близка к завершению)
  • Ассемблер и C (конец интриги)
  • Из записок старого программиста Воспоминания об ассемблере
  • Ассемблер vs ассемблер (интрига не закончилась)
  • О языке программирования ассемблер на платформе x86-64. Самое начало
  • Ассемблер. Управление файлами. Статья 1
  • Ассемблер. Управление файлами. Статья 2
  • Ассемблер, управление файлами. Статья 3
  • Ассемблер. Числа с плавающей точкой
  • Ассемблер. Числа с плавающей точкой. Еще один пример
  • Из записок старого программиста. Воспоминания об ассемблере 2
  • Ассемблер. Создаем статические библиотеки
  • Ассемблер. Создаем динамические библиотеки в Linux
  • Из записок старого программиста. Воспоминания об ассемблере 3
  • Ассемблер. Доступ к параметрам командной строки
  • Ассемблер. Доступ к параметрам командной строки. Статья 2
  • Ассемблер на платформе Linux x86-64. Получить параметр командной строки. Статья 3
  • Программирование на ассемблере as в Linux. Системный вызов execve
  • Linux GNU assembler. Программа для запуска других процессов из командной строки
  • Программирование на языке ассемблера в Linux. Получить список строк окружения (environment)
  • И снова ассемблер (GAS x86-64) для Linux. Продолжаем работать со стеком, локальные переменные
  • GNU assembler x86-64 Linux. Стек и команды ассемблера
  • Ассемблер, команды ассемблера, основные конструкции (assembler x86-64)
  • Ассемблер для Linux. Локальные переменные (продолжение)
  • Сложные логические условия на ассемблере (GNU assembler, Linux, x86-64)
  • Программирование на ассемблере в Linux. Вложенные циклы
  • Ассемблер x86-64. Строковые операции
  • Ассемблеры. Не большой обзор
  • Ассемблер x86-64. Базовые арифметические операции
  • Ассемблер x84-64. Регистр флагов (флаги условий)
  • Ассемблер x86-64. Строковые команды (movs , lods , stos , cmps , scas)
  • Ассемблер x86-64. Битовые и логические операции
  • Книга "Ассемблер для Linux"

Пока. Подписываемся на мой канал Old Programmer и программируем на ассемблере.

Ассемблер это красиво
Ассемблер это красиво