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

Да и вроде movzx ecx, [mem] работает быстрее, чем mov

cl, [mem]?

25 ответов

33 просмотра
The Bird of Hermes- Автор вопроса

И это тоже вопрос

Да.

movzx ecx, word[mem] Есть в x86_64 вообще-то. Как и byte[mem]

The Bird of Hermes- Автор вопроса
КТ315
movzx ecx, word[mem] Есть в x86_64 вообще-то. Как ...

А лучше назначением rcx или ecx?

The Bird of Hermes- Автор вопроса
КТ315
movzx ecx, word[mem] Есть в x86_64 вообще-то. Как ...

Я потому и удивился, че это там не так

The Bird of Hermes- Автор вопроса
КТ315
Что не так?

В fastcall у фасма mov cl, param

The Bird of Hermes
В fastcall у фасма mov cl, param

И ты хочешь это переделать в movzx ecx, param ?

The Bird of Hermes- Автор вопроса
КТ315
И ты хочешь это переделать в movzx ecx, param ?

Агась. Я знаю, что сломается передача константы типа byte 25

The Bird of Hermes
Агась. Я знаю, что сломается передача константы ти...

Ну, переделывай. Никаких проблем не будет.

The Bird of Hermes
В fastcall у фасма mov cl, param

А call автоматически выбирает вызов? Или это сам по себе отдельный вызов

The Bird of Hermes- Автор вопроса
The Bird of Hermes- Автор вопроса
КТ315
Только rcx не используй.

Ну тип первый аргумент по соглашению о вызовах

The Bird of Hermes- Автор вопроса
КТ315
rcx а не ecx

А, ну это да

The Bird of Hermes
А, ну это да

param может быть регистром?

The Bird of Hermes- Автор вопроса
The Bird of Hermes
Да

А как там тогда работало mov cl, param? По логике, ты не мог тогда передать регистры больше, чем 1-а байтный. И числа не больше 255.

The Bird of Hermes- Автор вопроса
КТ315
А как там тогда работало mov cl, param? По логике,...

Он там по размеру операнда определяет, какую инструкцию использовать

The Bird of Hermes
Он там по размеру операнда определяет, какую инстр...

А, ну, тогда так: Для 1 байта: mov cl, param Для 2 байт: movzx ecx, param Для 4 байт: mov ecx, param Для 8 байт: mov rcx, param

The Bird of Hermes- Автор вопроса
The Bird of Hermes
А почему для 1 байта не movzx?

Ой, тьфу. Сам себе противоречу. Да, movzx.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта