Каков размер каждой asm инструкции?

Зарезервируйте свое заключительное пространство прежде, затем используйте добавлять метод с буфером. Например, скажите, что Вы ожидаете, что Ваша заключительная длина строки будет 1 миллионом символов:

std::string s;
s.reserve(1000000);

while (whatever)
{
  s.append(buf,len);
}
11
задан starblue 10 September 2009 в 10:28
поделиться

2 ответа

Размер машинной инструкции зависит от архитектуры процессора - существуют архитектуры с инструкциями фиксированного размера, но вы, очевидно, ссылаетесь на IA-32 и Intel 64, и у них сильно различаются длины инструкций. . Указатель инструкции, конечно, всегда увеличивается на длину обрабатываемой инструкции.

Вы можете загрузить руководства IA-32 и Intel 64 от Intel - они содержат почти все, что вы можете знать об архитектуре. Вы можете найти карту кодов операций и формат набора инструкций в Руководство разработчика программного обеспечения для архитектур Intel® 64 и IA-32, том 2B: Справочник по набору команд, Новая Зеландия на страницах с 623 по 768.

17
ответ дан 3 December 2019 в 06:22
поделиться

Размер машинного кода зависит от архитектуры процессора.

Например, на IA-32 размер инструкции варьируется от 1 до 6 байтов (или более).

2
ответ дан 3 December 2019 в 06:22
поделиться
Другие вопросы по тегам:

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