169 похожих чатов

Если я правильно, у нас строка хранится в rip+0xef9 После команды

lea у нас теперь в rax хранится 0xef9(то есть нужная нам строка)
Далее мы из rax перемещаем значение в rdi, а далее rdi подставляем в функцию печати?

12 ответов

12 просмотров

У тебя rdi и rax два 64 битных регистра, то есть каждый из них может хранить только 8 символов "hello world" у тебя 11 символов

aquanox inside
У тебя rdi и rax два 64 битных регистра, то есть к...

Только вот проблемка то в том, что функция принимает адрес, а какой нахрен адрес у регистра, даже если его hello world умещался бы в 8 байт?)

Денис Rabbit
Только вот проблемка то в том, что функция принима...

если я правильно понимаю, то функция puts печатает стэк

aquanox inside
если я правильно понимаю, то функция puts печатает...

Функция puts печатает строку) при чём тут стек? Строка то может быть где угодно

в си нет строк

aquanox inside
в си нет строк

А смотри, что стандарт говорит про strcat The strcat function appends a copy of the string pointed to by s2 (including the terminating null character) to the end of the string pointed to by s1. The initial character of s2 overwrites the null character at the end of s1. If copying takes place between objects that overlap, the behavior is undefined. Как же так? Ведь в си нет строк

aquanox inside
откуда ты это взял?

Чтобы ты себя совсем не утруждал, стр 364

Денис Rabbit
Чтобы ты себя совсем не утруждал, стр 364

ну давай сложи две строки в первую строку

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта