Category: Assembler

Книги по Assembler для начинающих и для продвинутых программистов онлайн

12
Ноя
2022

Извлечение данных из строки и передача их в ассемблер

Полный новичок. Изучаю ассемблерную вставку. Было дано задание: Разработка программы «Вычисление арифметической функции, заданной в текстовом файле».

Для реализации программы использовать вычислительные средства архитектуры IA-32.
Входные…

12
Ноя
2022

Извлечение данных из строки и передача их в ассемблер

Полный новичок. Изучаю ассемблерную вставку. Было дано задание: Разработка программы «Вычисление арифметической функции, заданной в текстовом файле».

Для реализации программы использовать вычислительные средства архитектуры IA-32.
Входные…

18
Июл
2022

Как реализовать SMP boot в своей ос?

За все время поиска ответа я наткнулся только на ассемблерную иницализацию smp, которая проводилась в 16-битном режиме. Я работаю с gnu-efi, который загружается в 64-битном режиме. Я начинающий в теме низкоуровнего программирования операци…

18
Июл
2022

Как реализовать SMP boot в своей ос?

За все время поиска ответа я наткнулся только на ассемблерную иницализацию smp, которая проводилась в 16-битном режиме. Я работаю с gnu-efi, который загружается в 64-битном режиме. Я начинающий в теме низкоуровнего программирования операци…

29
Май
2022

Какой есть аналог ret в ARM32 ассемблере?

В отличие от arm64, в armhf нету инструкции ret, чтобы вернуться из функции. Да вот проблема: я не нашёл рабочего кода для возвращения из функции. Я пробовал отсюда, но ничего не помогло.
Код C:
extern void asmfunc();
int main() {
asmf…

17
Апр
2022

Необработанное исключение: Access violation (Нарушение доступа)

Делаю гибридную программу Си-Ассемблер для вычисления функции. Ввожу данные при помощи call scanf, помещаю необходимые данные для scanf в стек, потом стек ощичаю, но всё равно возникает ошибка доступа. Не могу понять с чем она связана. Выб…

12
Апр
2022

Не работает асемблерная вставка в Си, ошибка сегментирования

Пытаюсь вычислить мат ожидание, используя ассемблерную вставку, но к сожалению не могу заставить цикл работать.

До добавления перехода по loop’ам, выдавал результат одной итерации ассемблерной вставки (сложения первых 2 чисел), например, …

10
Апр
2022

Java- ассемблер, выдает ошибку в jvm

Мне необходимо каким-то образом сделать небольшую вставку в java на asm
Пытался сделать по единственному гайду в русскоязычном интернете-не сработало(использовался jni)
Сам гайд-Java/asm
Код хоть компилируется и запускается(значения в реги…

10
Апр
2022

Java- ассемблер, выдает ошибку в jvm

Мне необходимо каким-то образом сделать небольшую вставку в java на asm
Пытался сделать по единственному гайду в русскоязычном интернете-не сработало(использовался jni)
Сам гайд-Java/asm
Код хоть компилируется и запускается(значения в реги…

30
Ноя
2021

Ассемблерная вставка, Error: "invalid use of register"

Не работает ассемблерная вставка, хочу посчитать обратную матрицу, используя ассемблер. Но для проверки параллельно считаю на Си для проверки вычислений. Но получаю ошибку "junk ‘2’ after expression"
Код:
#include<stdio.h&gt…

24
Ноя
2021

Не работает асемблерная вставка в C

Задача состоит в том, что бы найти обратную матрицу, размерность матрицы постоянная 3х3, необходимо для вычислений использовать асемблерную вставку. Код работает до момента асемблерной вставки. Пример работы программы:

Компилятор gcc, раб…

11
Ноя
2021

помогите написать ассемблерную вставку правильно в цикле? язык Си

Пытался написать вставку но она не заработала.
В комментарии указано то, что по идее должна делать вставка.
#include<stdio.h>
#include<math.h>
#include<locale.h>
#include<malloc.h>
#include<stdlib.h>

int mai…

18
Окт
2021

Выполнение "UB-кода" из-за неправильного предсказания ветвления

Есть код типа такого:
if (ptr) ptr->do_something();

Из-за неудачного branch prediction CPU начал выполнять ptr->do_something(); с нулевым указателем. Что происходит в таком случае? segfault неявно подавляется? Является ли код, где U…

18
Окт
2021

Выполнение "UB-кода" из-за неправильного предсказания ветвления

Есть код типа такого:
if (ptr) ptr->do_something();

Из-за неудачного branch prediction CPU начал выполнять ptr->do_something(); с нулевым указателем. Что происходит в таком случае? segfault неявно подавляется? Является ли код, где U…

10
Окт
2021

asm aarch64 java

Как пользоваться ?
Скачал на github.com вот этот проект :
https://github.com/jnr/jnr-a64asm
Но , в нём отсутствует Main.java …
Не подскажете как подключить ?
Спасибо …

05
Окт
2021

Запись строки в память

Учусь работать с отладчиком GDB – разбираю пример простой программы на языке C. Пример из учебника, так что не ругайтесь за код. Тем более что вопрос по компиляции/ассемблеру.
#include <stdio.h>
#include <string.h>

int main( )…

03
Сен
2021

Как делать вставки на СИ в код на ассеблере?

Например я хочу написать загрузчик.
Я пока плохо понимаю ассемблер и возможно не правильно напишу, но хочется что-то типа такого.
org 7C00h

void clear()
{
__asm("
;Очищаем экран
mov ax, 3
int 10h
");
}

void init()
{
__asm(&…

15
Авг
2021

Возможно ли напрямую читать или записывать данные в ОЗУ?

Возможно ли реализовать чтение/запись данных прямиком в ОЗУ (по адресам?) в программе на Rust/Python/Ассебмлере(Aarch64) (в Linux).
P.S: не пинайте за такие вопросы, в архитектурах комплюхтеров я не разбираюсь, про google я знаю.

19
Июл
2021

Почему при сборке ядра cross-gcc странно себя ведёт?

я учусь писать систему, использую кросс-компилятор gcc. Как всегда, появилась одна большая проблема: если я в файле kernel.c создам маску символа(моя ос работает в защищённом режиме, изначально был сменён режим на графический(VGA)) в главн…