Задание по программированию (язык си)
Нужно выполнить 4 задания
1 - нужно вставить фрагмент кода на ассемблере в программу на языке C, чтобы вычислить сумму двух переменных.
Совет: Вы можете использовать эту программу в качестве основы, которая увеличивает переменную. Просто добавьте вторую переменную и замените инструкцию INC на ADD.
Вставьте фрагмент кода на ассемблере в программу на языке C, чтобы вычислить сумму двух переменных.
2 - нужно написать программу на языке C, используя встроенный ассемблер, в которой вы используете собственную функцию для умножения на два без использования произведения. Совет: просто помните, что умножение двух в двоичной системе означает перемещение числа на один разряд влево. В качестве основы вы можете использовать пример программы из предыдущей задачи, которая увеличивает переменную. Просто замените инструкцию INC на SHL.
3 - используя встроенный ассемблер, нужно написать программу на C с функцией преобразования цифры (0–15) в соответствующий символ ASCII, представляющий значение в шестнадцатеричном формате. Для чисел от 0 до 9 на выходе будет символ «0» — «9», для чисел от 10 до 15 — символы «A» — «F». Все ядро программы должно быть написано на языке символьных инструкций, оно не должно использовать поля. Вы можете использовать только язык C для вывода результатов.
Этот фрагмент программы на C будет делать то же самое:
символ = число <10? число + ‘0’: число + 55;
Вы можете снова использовать программу, которая увеличивает переменную в качестве основы. Все, что вам нужно сделать, это заменить инструкцию INC на ADD и завершить тест (CMP) с некоторым условным переходом.
4 - Используйте встроенный ассемблер и инструкцию cpuid, чтобы написать программу, определяющую тип процессора вашего компьютера (Intel, AMD, Cyrix,…). Вывод должен быть сохранен в поле. Совет: инструкция cpuid ожидает номер функции в регистре EAX, в нашем случае 0. В результате получается три регистра, которые необходимо сохранить в поле и перечислить в виде строки.
-
Здравствуйте оброщяйтесь всё помогу ))
-
Актуальні фриланс-проєкти в категорії C та C++
Реверс-інжиніринг консольних утиліт для опитування контролерів SSD (Flash ID)1. Мета роботиВиділення програмного інтерфейсу (API) взаємодії з контролерами SSD/NVMe з наданого набору консольних утиліт (Phison, Silicon Motion, Realtek, Maxiotek, Marvell, JMicron та ін.). Результатом має стати робочий код мовою C/C++ або точна документація структур для… C та C++, Десктопні додатки ∙ 11 днів 7 годин тому ∙ 6 ставок |
Розробка Minecraft Java Seed Map / Seed Viewer для сайтуРозробка Minecraft Java Seed Map / Seed Viewer для сайтуОпис проєкту Потрібно розробити browser-based інструментMinecraft Java Seed Map / Seed Viewer, який буде працювати на нашому сайті та дозволятиме користувачу ввести seed Minecraft Java Edition і переглянути інтерактивну… C та C++, HTML та CSS верстання ∙ 11 днів 14 годин тому ∙ 17 ставок |