Вход Блог
Строительство и ремонт
Репетиторы
Красота
Фрилансеры
Разные специалисты
Тренеры
Уход за животными
Автоинструкторы

Assembler — работа в Москве

Дата: 2022-12-02
Детали
Регион
Москва
Метро
Театральная, Охотный Ряд, Площадь Революции
Занятость
без разницы
Стоимость
от 3000.00 руб.
Дата публикации
2022-12-02
Описание
Для себя Мне нужно выполнить дз по assembly к 23:59 Вы можете сообщить мне свою цену 1.Напишите подпрограмму ‘partition’, которая в регистре EBX (RBX) принимает адрес начала массива arr элементов типа int16_t, в регистре ESI их количество size (size > 1) и в регистре EDI знаковое значение pivot. Гарантируется, что элемент, равный pivot, в массиве сущ ствует. Перегруппируйте элементы массива таким образом, что в начале массива находятся элементы, для которых выполняется условие arr[i] <= pivot, а в конце массива — arr[i] >= pivo . То есть в итоговом массиве должен существовать такой индекс mid (0 <= mid < size) что arr[i] <= pivot для любого i < mid и arr[i] >= pivot для любого i >= mid. В регистре EDX верните mid. Соблюдайте стандартные соглашения о сохранении/восстановлении регистров. Например, если задан массив { 10 9 8 7 6 5 4 3 2 1 } и значение pivot == 5, возможным результатом будет массив { 1 2 3 4 6 5 7 8 9 10 } и значение mid == 4. Функцию вызова вашего кода из си можно взять https://gist.github.com/ObjatieGroba/d7102f7fe80871f787e9b0321667fa52 2.Напишите программу, реализующую операции над персистентным стеком (знающим все свои промежуточные состояния). На стандартном входе программе подаётся не более 1000 команд в виде 32-битных знаковых чисел: 0 i x - push(i, x); 1 i - pop(i); Нулевое состояние - состояние пустого стека Элемент (состояние) стека должен храниться в памяти в виде двух машинных слов: хранимое число и адрес (или индекс) элемента-предка. Элементы стека должны храниться в статически заданном массиве достаточного размера. Команда push создает новое состояние, равное добавлению числа x в конец состояния i. Команда pop печатает вершину стека состояния i и создает новое состояние - состояние после удаления. Команда pop пустого списка не создает новое состояние и печатает -1. Признаком завершения списка команд является флаг CF, выставленный функцией read* из simpleio. Гарантируется, что состояния, на которые ссылаются команды, существуют. 3.Напишите функцию supersum складывающую беззнаковые “длинные“ little-endian числа C = A + B. В регистре eax передается указатель на число A, в ebx - указатель на B, в ecx - указатель на С. В esi лежит размер числа A, в edi размер числа B в байтах. Программа возвращает 1 + индекс последнего ненулевого байта числа C в регистре eax (иными словами размер числа C). Размер числа 0 - 0. Гарантируется, что размер буфера C > max(размер A, размер B). Не забывайте сохранять значения регистров, которые нельзя портить. Инструкции pushf и popf выглядят надежными и кладут/забирают аж четыре байта на стек. Входные числа могут содержать старшие нулевые байты. Вы можете протестировать функцию со https://gist.github.com/ObjatieGroba/cf373ad19998e8f04701997355d5f396
Похожие заказы

Обучение Assembler

дистанционно
от 2000.00 руб.
Для ребёнка Подготовка к экзамену
Москва Репетиторы

Обучение Assembler

дистанционно
договорная
Для себя
Москва Репетиторы

Обучение Assembler

дистанционно
договорная
Для себя
Москва Репетиторы

Обучение Assembler

дистанционно
договорная
Для себя Научить программировать на уровне Университета первого года, подготовить к экзаменам в ближайший срок
Москва Репетиторы

Обучение Assembler

дистанционно
от 1000.00 руб.
Подготовка к зачёту в ВУЗе. Обучение работе с языком «Ассемблер» в ближайшие сроки.
Москва Репетиторы

Обучение Assembler

дистанционно
от 1000.00 руб.
Для себя Сделать лабораторные в приложении LampPanel
Москва Репетиторы

Обучение Assembler

дистанционно
договорная
Для себя
Москва Репетиторы