самых многогенерирующих сообщений у меня в ленте )
вот вопросец снова возник, связан с ассемблером и паскалем
нужна помощь, т.к. я не шарю )
вы в nasm/fasm когда к глобальной переменной обращаетесь, вы как пишете?
так:
mov eax, [rip+a]
cmp eax, [rip+a]
или так:
mov eax, a
cmp eax, a
a - тут глобальная переменная
забыл упомянуть - при написании под х64
Если прочитать надо - так: mov rax, qword[a] cmp rax, qword[a]
это под х64? т.е. ассемблер в бинарник сам вставляет rip? ну в смысле опкод нужный формирует, относительно rip, а не абсолютный адрес
В NASM - вроде, автоматически (по-умолчанию относительно RIP). В FASM надо указывать RVA.
это как выглядеть будет? mov eax, rva a?
Не знаю. RVA к RIP-адресации не имеет отношения вообще. Для чтения нужны квадратные скобки. RIP-адресация в фасме автоматическая.
rel в насме вроде.
Это в NASM.
дезинформируешь людей. в фасм в х64 также все операнды в памяти из адресов абсолютного вида переводятся в RIP адреса. исключения есть только для адресов с переопределенными сегментными регистрами fs gs - для них адреса остаются абсолютными.
Так отключи звук чата, и тогда не будут сообщения приходить.
Обсуждают сегодня