Вопросы по теме 'fasm'
Чтение из памяти в реальном режиме 8086 при использовании «ORG 0x0000»
Я возился со сборкой x86-16 и запускал ее с VirtualBox. По какой-то причине, когда я читаю по памяти и пытаюсь напечатать его как символ, я получаю совершенно другие результаты, чем ожидал. Однако, когда я жестко кодирую символ как часть инструкции,...
1789 просмотров
schedule
02.08.2022
Сборка x86: проблема с инструкцией movsd
Это моя проблема: я пытаюсь использовать scanf (в msvcrt.dll ) для ввода одного значения с плавающей запятой в flat assembler , затем я пишу простую "программу сканирования", подобную этой (в C ):
#include <stdio.h>
int main() {...
7249 просмотров
schedule
15.08.2022
Как получить двойное возвращаемое значение функции atof() (из msvcrt.dll) в сборке?
Я хочу преобразовать строку, представляющую число с плавающей запятой, в двойную (64-битную ieee754) и сохранить результат преобразования в регистре RAX из сборки (используя FASM). Прежде всего, я включил библиотеку в свой main.asm:
atof: jmp...
519 просмотров
schedule
07.09.2022
Почему программа не отображает результат?
Я хочу написать программу, которая переводит углы в радианы.
format ELF executable 3
entry start
segment readable executable
deg2rad:
mov ax, [val]
mov bx, 180 ; rad = deg*pi/180
mul [pi] ;rad = deg*pi/180
div ebx
start:...
51 просмотров
schedule
30.09.2022
ассемблер (fasm) - прочитать символ
функция прерывания биоса 21h (ah = 1h) должна считывать символ со стандартного ввода и повторять его.
Моя функция чтения:
mov ah, 1h
int 21h
Итак, если я нажму клавишу, он это поймет, но не будет повторять символ. Поскольку я...
1941 просмотров
schedule
25.07.2023
Как изменить таблицу импорта ассемблерной программы, скомпилированной flatassembler
Я тестирую программу сборки, скомпилированную flatassembler, и ей нужно изменить таблицу импорта, поэтому, когда я запускаю objdump , я вижу, какие внешние функции пытается вызвать программа.
Итак, я начинаю с:
format PE GUI
section '.flat'...
1159 просмотров
schedule
24.04.2023
сборка 2 программы меняют друг друга
Интересно, почему, когда вы выполняете 2 программы сборки одновременно или они используют потоки, это будет выглядеть так.
//program1
mov eax,1
add eax,50
program 2
xor eax,eax
add eax,eax
Доступ к регистрам, в отличие от оперативной памяти,...
153 просмотров
schedule
09.04.2023
Зачем программисту на ассемблере вычитать из ebp в этом месте вместо esp?
У меня небольшое замешательство по поводу использования ebp и esp в отношении настройки кадра стека на языке ассемблера x86. В следующем коде:
section '.code' code readable executable ; define the code section of the file
main:...
574 просмотров
schedule
09.10.2022
Сравнение 80-битных чисел с плавающей запятой в FASM с заданной точностью
Я пишу программу, которая вычисляет число Пи, используя серию Нилаканта в цикле с точностью не менее 0,05%. Условием выхода из этого цикла должно быть, когда текущее вычисленное значение res и ранее вычисленное значение prev соответствуют |res -...
72 просмотров
schedule
16.12.2022
Код Option Rom не может напечатать предполагаемую строку с помощью эмуляции Qemu
Пытался протестировать простую программу ISA Option Rom, скомпилированную с помощью FASM или NASM, которая просто распечатывает простое сообщение «Hello World».
Проблема в том, что вместо печатаемой строки я получаю пару неожиданных символов при...
455 просмотров
schedule
15.10.2023
Функция GetVersionEx для Windows 8.1 и выше (fasm)
Пишу приложение в fasm и у меня проблема с определением Windows версии 8.1 и выше. Функции GetVersionEx и Version Helper дают мне Windows 8. Как говорит MSDN, я должен настроить свое приложение, изменив файл манифеста в Visual Studio, но я не...
124 просмотров
schedule
04.11.2023
64-битный PE-файл без таблицы поиска импорта
У меня есть 64-битное приложение Hello World для Windows. Он был создан с использованием плоского ассемблера (fasm). У меня больше нет исходного кода, но это очень простой пример, который вызывает:
MessageBoxA()
ВыходПроцесс()
Я открыл...
542 просмотров
schedule
23.12.2023
Как использовать fs:bx в инструкции вызова в Flat Assembler?
Я создаю ядро, и мне нужна помощь с инструкцией вызова. Я использую Flat Assembler для сборки ядра.
call fs:bx
Возможно ли это? Потому что плоский ассемблер выдает ошибку "неверный размер операнда".
я знаю, что могу сделать
call...
244 просмотров
schedule
26.04.2024