Вопросы по теме 'att'

Значение инструкции x86
Я сейчас просматриваю некоторый код на gdb и понятия не имею, что на самом деле делают эти две инструкции. Если бы кто-нибудь мог мне помочь, я был бы очень признателен. add -0x2c(%ebp, %ebx, 4), %eax cmp %eax, -0x28(%ebp, %ebx, 4)
964 просмотров
schedule 09.12.2022

Что делает этот ассемблерный код и почему он используется?
Синтаксис ATT. Я заметил, что библиотечные процедуры в C часто используют следующий фрагмент ассемблерного кода: call next next: popl %eax Какое значение здесь хранится% eax и почему оно появляется? Какова цель этого фрагмента?
411 просмотров
schedule 24.09.2022

Что означает 0x4 из инструкции по сборке cmp 0x4(%esi),%ebx?
Что означает 0x4 со следующей сборочной линии? cmp 0x4(%esi),%ebx je ... Когда это сравнение возвращает равенство и выполняется переход, регистры имеют значения: %esi 0xe944d6d0 %ebx 0xe94ceccc Извините, что задаю такой простой...
1896 просмотров
schedule 13.06.2023

К какому значению из памяти или регистра обращается каждый из операндов синтаксиса AT&T?
Предположим, что по указанным адресам памяти и регистрам хранятся следующие значения: Address Value Register Value 0x100 0xFF %eax 0x100 0x104 0xAB %ecx 0x1 0x108 0x13...
5086 просмотров

пытаюсь понять инструкцию по сборке: cltd на x86
нашел инструкцию по сборке cltd путем дизассемблирования кода на архитектуре Intel. Описание, которое я нашел, заключалось в том, что он очищает регистр% edx, но я не понимаю, что происходит .... кто-нибудь может объяснить, что именно делает...
8021 просмотров
schedule 11.02.2023

Общие сведения об установке флага кода условия в сборке
Если у меня есть следующая таблица: Case 1: x: 42 y: -15 (y-x) = -57 Case 2: x: -17 y: -17 (y-x) = 0 Case 3: x: 0x7ffffffd y: -67 (y-x) = 2147483584 Case 4: x: 67 y:...
3801 просмотров
schedule 23.04.2022

CMP в x86 со скобками и адресом
У меня есть следующая строка на языке ассемблера x86, которую я не знаю, что она делает... cmp %eax,0x80498d4(,%ebx,4) Я знаю, что это сравнивает две половины оператора, но я не знаю, что делает в нем адрес и что делают круглые скобки....
5310 просмотров
schedule 07.01.2023

Ошибка сегментации шеллкода
Я начал изучать шеллкод в Linux. Я получаю ошибку сегментации при связывании ниже кода сборки. Можете ли вы помочь, почему я получаю эту ошибку. Заранее спасибо. root@KaliLinux:~/Desktop# cat Untitled\ Document 1 .text 2 3 .globl...
399 просмотров
schedule 17.06.2022

Переходы от ассемблера к C-коду
Я новичок в этом, но я пытаюсь реконструировать ассемблерный код, чтобы выяснить, что он делает на C. Функция, на которую я смотрел, вызвала другую функцию (func4), и я представил ее, чтобы посмотреть. Буду признателен за любую помощь или совет о...
2570 просмотров
schedule 13.09.2022

Сборка - CMP не работает должным образом
Я новичок в коде сборки, и я работаю над кодом с gdb, который имеет это: => 0x080485ee <+132>: cmp %eax,0x80498d4(,%ebx,4) 0x080485f5 <+139>: je 0x80485fc <main+146> 0x080485f7 <+141>: call 0x8048540...
1297 просмотров
schedule 13.04.2022

Упакуйте битовые поля в 32-битный регистр, используя сборку x86
В данный момент я работаю с RNS на ассемблере x86 AT&T. Мне нужно поместить 5 остатков в один регистр, %eax. Часть кода: .macro division number mov $0, %ecx loop_getremainders: mov $0, %edx mov number, %eax...
166 просмотров
schedule 14.05.2023

Несоответствие инструкции Cmp
Мне нужно написать функцию на ассемблере, чтобы завершить следующий код c. int main(){ int hist[26]={0}; int i; charHistogram("This is a string", hist); for (i=0; i<26; i++ ) printf("%c:%d ", i+’a’, hist[i] ); printf("\n"); } return 0; }...
1966 просмотров
schedule 25.10.2023

Несоответствие типа операнда GAS Assembler для cmovz
Пытаюсь написать простую программу сборки. По какой-то причине условные ходы, кажется, выдают мне эту ошибку. Если я заменю их обычной инструкцией mov, она сработает. Что не так со следующим кодом? .section .data supported: .asciz "AVX...
544 просмотров
schedule 15.08.2022

Преобразование из ascii в целое число в AT&T Assembly
Как я могу преобразовать из ascii в целое число? data asd: .int 32 .text .globl _start _start: movl $4, %eax movl $1, %ebx movl $1,(asd) add $48,(asd) movl $asd, %ecx movl $4, %edx int $0x80 # Exit...
3911 просмотров
schedule 30.01.2023

Рекурсивная подпрограмма факториала в ассемблере x64 приводит к переполнению стека
Я реализую рекурсивный алгоритм для вычисления факториала заданного числа в сборке x64. (Я использую синтаксис AT&T.) Псевдокод выглядит так: int factorial(int x){ if(x == 1){ return 1; }else{ return x*factorial(x-1);...
5001 просмотров
schedule 15.05.2022

Сборка 32-битных двоичных файлов в 64-битной системе (набор инструментов GNU)
Я написал ассемблерный код, который успешно компилируется: as power.s -o power.o Однако это не удается, когда я пытаюсь связать объектный файл: ld power.o -o power Чтобы работать в 64-битной ОС (Ubuntu 14.04), я добавил .code32 в...
6881 просмотров
schedule 30.12.2022

как преобразовать 64-битное число в строку в сборке x86?
Я ищу способ преобразовать 64-битное число в строку (и, возможно, наоборот), используя 32-битную систему. Я не прошу код, просто прошу некоторые идеи.
1135 просмотров
schedule 20.12.2022

Руководство по коду операции для GNU GAS
Я пытался понять некоторый ассемблерный код для x86, написанный для сборки с использованием ассемблера GNU - GAS. Может кто подскажет реф. для поиска синтаксиса кодов операций/мнемоники в GAS.
925 просмотров
schedule 24.08.2023

Несоответствие типа встроенной сборки AT&T
Я изучаю ассемблер и не нашел ничего, что помогло бы мне в этом. Это вообще возможно? Я не могу заставить это работать. Я хочу, чтобы этот код принимал значение «b», помещал его в %eax , а затем перемещал содержимое %eax в мой вывод и печатал...
573 просмотров
schedule 20.08.2022

Синтаксис Intel x86 - неоднозначный размер для mov, мусор после выражения?
Я работал с синтаксисом AT&T, но решил попробовать Intel. У меня есть такой код: .text .global _start _start: mov ebx, 0 mov eax, 1 int 80h Что должно вернуть 0, верно? Так было с AT&T до того,...
4100 просмотров
schedule 11.08.2022