Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

Почему CALLSTACK так важен? Учебник по ассемблеру для начинающих | Программирование архитектуры x...

Автор: Mxy

Загружено: 2025-10-18

Просмотров: 4086

Описание:

;########################
;# КОД ДЛЯ КОПИРОВАНИЯ И ВСТАВКИ:
;#######################
.intel_syntax noprefix
.global _start
.text

_start:
lea r15, [resume_here]
jmp print_hello

resume_here:
jmp exit

exit:
mov rax, 60 ;# код системного вызова для выхода
xor rdi, rdi ;# обнуление rdi
syscall ;# выполнение системного вызова

print_hello:
mov rax, 1 ;# запись
mov rdi, 1 ;# вывод на терминал
lea rsi, [hello] ;# начало строки
lea rdx, [hello_len] ;# длина строки
syscall ;# выполнить/вызвать ядро

lea r15, [resume_hello]
jmp print_goodbye

resume_hello:
jmp r15

print_goodbye:
mov rax, 1
mov rdi, 1
lea rsi, [goodbye]
lea rdx, [goodbye_len]
системный вызов
jmp r15

.data
hello: .ascii "привет, мир!\n"
hello_len = . - hello

goodbye: .ascii "до свидания!\n"
goodbye_len = . - до свидания

;# КОНЕЦ КОДА
;########################

Ссылка на эмулятор: https://x64.halb.it
Следующее видео:    • IF STATEMENTS & Loops in Assembly | Condit...  
ПЕРВОЕ видео курса:    • Learn Assembly For Beginners | Introductio...  
ПРЕДЫДУЩЕЕ видео курса:    • How to Make Functions in Assembly: The JMP...  

00:00 Почему функции не работают без стека вызовов?

01:09 Бесконечный цикл!

02:24 Как работают стеки вызовов
5:54 Проблема бесконечного цикла в коде
7:27 Кодирование стека вызовов на ассемблере
18:13 Использование настоящего стека вызовов
22:30 Команды стека: PUSH и POP

Почему CALLSTACK так важен? Учебник по ассемблеру для начинающих | Программирование архитектуры x...

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

Операторы IF и циклы в ассемблере | Условная логика | Изучаем машинный код x86-64

Операторы IF и циклы в ассемблере | Условная логика | Изучаем машинный код x86-64

Конструкторы сломаны

Конструкторы сломаны

Как взломать любое программное обеспечение

Как взломать любое программное обеспечение

Bjarne Stroustrup - The Essence of C++

Bjarne Stroustrup - The Essence of C++

Путь данных типа R, I: объяснение инструкций ADD и ADDI для сборки MIPS

Путь данных типа R, I: объяснение инструкций ADD и ADDI для сборки MIPS

Why Was Assembly Made? | Programming Fundamentals

Why Was Assembly Made? | Programming Fundamentals

Напишите собственную функцию PRINT на языке ассемблера | Учебник для начинающих | Программировани...

Напишите собственную функцию PRINT на языке ассемблера | Учебник для начинающих | Программировани...

Как процессоры взаимодействуют с таким количеством различных устройств

Как процессоры взаимодействуют с таким количеством различных устройств

Программирование на ассемблере без операционной системы

Программирование на ассемблере без операционной системы

Почему работа в IT убивает интерес к программированию

Почему работа в IT убивает интерес к программированию

Массивы в ассемблере | Учебник для начинающих | Программирование на ассемблере | Курс по машинном...

Массивы в ассемблере | Учебник для начинающих | Программирование на ассемблере | Курс по машинном...

String Length Function | Assembly Tutorial for Beginners | x86-64 Architecture | Learn Programming

String Length Function | Assembly Tutorial for Beginners | x86-64 Architecture | Learn Programming

Нерассказанная история C#

Нерассказанная история C#

Полный разбор БЕЛЫХ СПИСКОВ.  Как мы будем выживать в 2026

Полный разбор БЕЛЫХ СПИСКОВ. Как мы будем выживать в 2026

Графический API не имеет значения

Графический API не имеет значения

The 137 zillion encodings of NOP

The 137 zillion encodings of NOP

Object-Oriented Programming in Assembly Explained | Vtables, Polymorphism | Python, Java, C++, C#

Object-Oriented Programming in Assembly Explained | Vtables, Polymorphism | Python, Java, C++, C#

E01: Глупые трюки с C++ с Дэйвом

E01: Глупые трюки с C++ с Дэйвом

Как загружается Linux

Как загружается Linux

The 80’s Algorithm to Avoid Race Conditions (and Why It Failed)

The 80’s Algorithm to Avoid Race Conditions (and Why It Failed)

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]