Перейти к содержимому

Как сравниваются строки в ассемблере | Учебное пособие для начинающих | Машинный код x86-64

Mxy

0:00 / 0:00

Как сравниваются строки в ассемблере | Учебное пособие для начинающих | Машинный код x86-64

2 629 просмотров · 10 мес. назад
Mxy
13 тыс. подписчиков
2 629 просмотров · 10 мес. назад
Следите за мной в x64Playground: https://x64.halb.it (Выберите GNU в качестве ассемблера!) Посмотрите курс с самого начала:    • Learn Assembly For Beginners | Introductio...   Следующее видео в курсе:    • Building a Tiny Shell in Assembly | Beginn...   Предыдущее видео в курсе:    • How a Shell Reads Commands | Building a To...   00:00 Почему CMP не работает со строками 01:36 Кодирование strcmp() на ассемблере 07:10 Тестирование strcmp() 8:55 Вывод совпадения/несовпадения 12:40 ЗАДАЧА: Проверьте только N символов строки ;##### Код ниже exit: xor rdi, rdi mov rax, 60 syscall print: push rdi call slen pop rsi mov rdx, rax mov Ракс, 1 мов РДИ, 1 системный вызов в отставку печатьln: нажать РДИ позвони Слену поп-рси мов рдкс, ракс мов ракс, 1 мов РДИ, 1 системный вызов мов ракс, 1 мов РДИ, 1 леа риси, [новая строка] мов рдкс, 1 системный вызов в отставку Слен: xor rcx, rcx slen.loop: мов аль, [rdi + rcx] cmp al, 0 я слен.рет Inc RCX jmp slen.loop слен.рет: мов ракс, rcx в отставку ;#########