0
ответов

Переключение в пользовательский режим с помощью iret

Я пишу небольшую ОС, которая будет выполнять некоторый код в пользовательском режиме (уровень привилегий 3). Из этого кода пользовательского уровня я хочу вызвать прерывание обратно в ОС, которая печатает сообщение. Прямо сейчас я не ...
вопрос задан: 31 July 2011 21:25
0
ответов

Использование LLDT и c onfiguring GDT для него

Я работаю над небольшой ОС, которая будет использовать отдельную таблицу локальных дескрипторов для каждого процесса. Я понимаю, что мне нужно будет использовать инструкцию lldt для загрузки сегмента LDT из моего GDT. Я уже ...
вопрос задан: 30 July 2011 21:37
0
ответов

Простая «программа загрузки» NASM неправильно обращается к памяти?

** Обратите внимание, что когда я говорю «программа загрузки», я не имею в виду программу, которая загружает ОС. Я имею в виду простую программу, которая запускается при запуске компьютера и что-то делает. Хорошо, значит, я не очень хорошо…
вопрос задан: 11 July 2011 01:13
0
ответов

64-битная сборка, когда для использования регистров меньшего размера

Я понимаю, что в сборке x86_64 есть, например, (64-битный) регистр rax, но к нему также можно получить доступ как 32-битный регистр, eax, 16-битный, ax и 8-битный, al. В какой ситуации я бы не просто использовал ...
вопрос задан: 5 July 2011 23:00
0
ответов

Ошибка ассемблера: 64-разрядная версия Mach-O не поддерживает абсолютную 32-битные адреса

Итак, я изучаю сборку nasm x86_64 на своем Mac для развлечения. После hello world и некоторой базовой арифметики я попытался скопировать немного более продвинутую программу hello world с этого сайта и изменить ее для 64 ...
вопрос задан: 5 July 2011 02:37
0
ответов

Возвращаемое значение функции C в ASM

Я пытаюсь вызвать функцию из ASM. Я знаю, как это назвать, но мне трудно найти, как получить возвращаемое значение этой функции. Пример ниже: Код C: int dummy () {...
вопрос задан: 29 May 2011 23:43
0
ответов

gcc assembly output

I'm wanting to look at the assembly output from a particular piece of code and generally I prefer reading nasm syntax compared to AT&T syntax. Is there a convenient way to get nasm assembly format ...
вопрос задан: 15 May 2011 08:19
0
ответов

Написание / связывание плоского двоичного файла с использованием NASM + LD

Я создаю свою собственную "игрушечную" ОС, и я дошел до того момента, когда я пытаюсь понимать компоновочные и исполняемые форматы - в частности, у меня есть исполняемый файл в двоичном формате плоского файла, который я загружаю ...
вопрос задан: 12 May 2011 15:29
0
ответов

Советы и подсказки по программированию на ассемблере [закрыто]

Я пытаюсь написать свою собственную "игрушечную" ОС, и на данный момент я делаю это в основном в Assembly (NASM) - отчасти потому, что я надеюсь, что это поможет мне разобраться в дизассемблировании x86, а также потому, что я нахожу ...
вопрос задан: 10 May 2011 14:14
0
ответов

Специфика NASM - Раздел против [РАЗДЕЛ]

Кажется, я не могу найти ничего ясного в документации NASM относительно разницы между использованием раздела или [РАЗДЕЛ] (в скобках) в вашем коде. Я знаю, что это макросы, но я их вижу ...
вопрос задан: 8 May 2011 05:31
0
ответов

Развертывание цикла и мозаика цикла

Кто-нибудь, пожалуйста, скажите, являются ли 2 метода оптимизации одинаковыми или разными? Также, Это ответственность программиста или компилятора за это?
вопрос задан: 26 March 2011 18:22
0
ответов

Программирование NASM - ʻint0x80` по сравнению с ʻint 0x80`

У меня есть простая программа NASM, которая вызывает только sys_exit: segment .text global _start _start: mov eax, 1; 1 - системный идентификатор для sys_exit mov ebx, 0; код выхода ...
вопрос задан: 25 March 2011 03:03
0
ответов

strlen in assembly

I made my own implementation of strlen in assembly, but it doesn't return the correct value. It returns the string length + 4. Consequently. I don't see why.. and I hope any of you do... Assembly ...
вопрос задан: 18 February 2011 12:51
0
ответов

Отправка двоичных данных

Есть ли проблема при выполнении цикла send (), где "const void * buf" (второй аргумент) - файловый дескриптор файла, открытого в двоичном режиме (fopen ("C: \ example.mp3", "rb"))?
вопрос задан: 17 February 2011 01:57
0
ответов

Ошибка при попытке запустить файл .asm на NASM на Ubuntu

Я использую 64-разрядную версию ubuntu и пытаюсь запустить файл .asm на NASM. Но он возвращает эту ошибку, когда я пытаюсь запустить следующий код. Я пытаюсь создать исполняемый файл путем компиляции (или сборки) ...
вопрос задан: 23 November 2010 21:55
0
ответов

запустить ассемблерный код на ubuntu

Ниже приведен код, который я пытаюсь запустить. Я использую nasm util для преобразования его в объектный файл. Когда я пытался выполнить, он говорит: «Не могу выполнить двоичный файл». Запускаю команду: nasm -f elf -o helloworld.o ...
вопрос задан: 21 October 2010 11:09