Вопросы по теме 'cpu-registers'
Отличаются ли регистры ЦП и кэш-память ЦП?
Отличаются ли регистры ЦП и кэш-память ЦП?
33135 просмотров
schedule
06.09.2022
Как узнать, представляет ли двоичное целое число отрицательное число?
Я читаю текст на C. В сеансе «Отрицательные и положительные значения» автор упомянул несколько способов представления отрицательного числа в двоичной форме.
Я все понял, и мне было интересно, можем ли мы с заданным двоичным числом определить,...
32055 просмотров
schedule
04.11.2023
Gvim, Использование регистров в команде
Я хочу использовать значение регистров в командной строке и в функции в GVIM.
В частности, моя цель — упростить выделение файла журнала на лету. Я хочу иметь возможность выделить с помощью простой команды выбранную строку, например * touch do....
92 просмотров
schedule
12.03.2024
Различные имена регистров gdb
Я изучаю Ассемблер, и это моя проблема.
Когда я использую gdb, я вижу регистры со следующими именами:
Dump of assembler code for function return_input:
0x000000000040053d <+0>: push %rbp
0x000000000040053e <+1>: mov...
304 просмотров
schedule
21.08.2022
Неизвестное имя регистра 'q0' в ассемблере
Я пытаюсь собрать проект ios для архитектуры $(ARCHS_STANDARD_32_BIT) - armv7 для последней версии iOS (iOS 7.0), и у меня возникает следующая ошибка:
Unknown register name 'q0' in asm
в функции
static void...
12659 просмотров
schedule
14.01.2024
«Новые» зарегистрированные имена в nasm
Согласно этому ресурсу ( http://www.sandpile.org/x86/gpr.htm ), кажется, что с расширением до 64-битного процессора существующие регистры (rax - rdi) получили альтернативные имена (R0 - R7), чтобы они соответствовали именам новых регистров (R8 - R15)....
629 просмотров
schedule
06.11.2023
Jump if zero (jz) быстрее?
Я читал эту статью , и я заметил инструкцию jz . Это заставило меня задуматься:
Будет ли сборка этого кода
for (int i=max;i!=0;--i){
//Some operation
}
превзойдет сборку этого кода?
for (int i=0;i<max;++i){
//Some...
1069 просмотров
schedule
09.12.2023
Разве R3 не должен хранить адрес x3307?
Я отвечаю на пробный вопрос из Вопрос 7
Разве адрес, который я выделил, не должен быть x3307, а не x3308?
Я обосновал это так: (ПК до 2-й инструкции) = (ПК после 1-й инструкции).
ПК после 1-й инструкции x3301. Поэтому при выполнении второй...
29 просмотров
schedule
16.04.2024
Можно ли на языке ассемблера IA-32 изменить или «загрузить» IDTR, GDTR или LDTR без инструкций LIDT, LGDT и LLDT?
Можно ли на языке ассемблера IA-32 изменить/загрузить IDTR, GDTR или LDTR без инструкций LIDT, LGDT и LLDT?
Кроме того, есть ли полный список инструкций, которые можно использовать для изменения других регистров? Мне нужно знать, какие инструкции...
1369 просмотров
schedule
13.11.2023
Сборка x86_64 %rsp против %esp
Недавно я игрался с ассемблером и наткнулся на странную ошибку в своей программе. Я обнаружил, что если я изменяю %rsp , выполняя 64-битные вычисления, то все работает нормально, но если я изменяю %esp на ту же величину, за исключением 32-битных...
8178 просмотров
schedule
14.04.2024
Сборка простого проекта, ошибка сегментации
Я пытаюсь выполнить задание для своего класса сборки, и в примере учителя есть строка
movl (%eax),%ebx
В моем коде используется точно такая же строка, но всякий раз, когда gdb достигает ее, у меня возникает ошибка seg. Я не понимаю, почему....
72 просмотров
schedule
22.02.2024
Реализация инструкции MUL в сборке
Мне нужно умножить на числа, но без использования инструкции MUL в сборке 8086.
Например:
mov bx, 2
bx -> bx * 41; code instead this line
Любая помощь?
1854 просмотров
schedule
04.05.2024
Странное поведение в указателе инструкций AMD64
Я читал «Взлом: искусство эксплуатации» Джона Эриксона и следовал примеру из книги в своей системе Kali Linux (64-разрядная версия).
Я написал простую программу на C:
#include<stdio.h>
int main()
{
int i;
for(i=0;i<10;i++)...
214 просмотров
schedule
07.01.2024
Что произойдет, если я изменю значение управляющего регистра cr0?
Я читаю о ядре Linux и узнал об управляющем регистре cr0 , в котором хранятся флаги пейджинга , защищенного режима и т. д.
Мне было интересно, если это вообще возможно, что произойдет, если мне каким-то образом удастся изменить значение cr0...
357 просмотров
schedule
18.02.2024
Всегда ли память вне каждого ядра концептуально плоская / однородная / синхронная в многопроцессорной системе?
Многопроцессорные системы выполняют «настоящие» операции с памятью (те, которые влияют на окончательное выполнение, а не только на спекулятивное выполнение) не по порядку и асинхронно, так как ожидание глобальной синхронизации глобального состояния...
190 просмотров
schedule
08.12.2023
Как хранить и использовать 32-битные значения в 16-битном режиме
Можно ли использовать регистры E*X в 16-битном режиме? Если нет, то как я должен хранить и использовать 32- и 64-битные значения (DWORDS и QWORDS). Я знаю об использовании ax и dx вместе для хранения 32-битного значения, но как мне адресовать память...
773 просмотров
schedule
14.03.2024
Побитовый оператор в регистрах на MSP430 без разыменования
Я использую MSP430G2553, и у TI есть вспомогательный код, определенный в заголовках, которые я использую (msp430g2553.h). Так, например, если я хочу установить направление контакта 0 GPIO порта 1, я могу написать
P1DIR |= BIT0;
Из любопытства...
114 просмотров
schedule
28.04.2024
Доступ к вызывающим пользовательским регистрам (и данным) из ядра
Как получить доступ к регистрам вызывающего пользовательского процесса из пространства ядра?
Например, если я хочу получить доступ к указателю стека или r8 или чему-то еще?
Если бы у меня был указатель стека на пользовательский стек, как бы я...
28 просмотров
schedule
27.01.2024