0 / 0 / 0
Регистрация: 01.11.2017
Сообщений: 6
1

[intel8051] Реализовать подпрограммы на ассемблере для сложения, вычитания, умножения 32 разрядных чисел

16.12.2017, 11:50. Показов 3353. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Реализовать три подпрограммы (вызываемые с помощью команды call), принимающие в качестве аргументов в регистрах r0–r3 первое беззнаковое 32-битовое число и в r4–r7 – второе и возвращающие результат в виде знакового 64-битового числа в регистрах r0–r7. Функции подпрограмм:
- первая: сложить первое и второе числа;
- вторая: из первого числа вычесть второе;
- третья: перемножить числа.

_____
please, HELP!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.12.2017, 11:50
Ответы с готовыми решениями:

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

Реализовать процедуры сложения и умножения двух сто разрядных чисел
Выручайте, совершенно ничего не понимаю в программировании,а в университете поставили данную дисциплину:(

Реализовать алгоритм умножения 2 целых чисел с использованием только операций сложения и вычитания
Доброго времени суток, необходимо реализовать алгоритм умножения 2 целых чисел с использованием только операций сложения и вычитания в...

5
пофигист широкого профиля
4759 / 3196 / 860
Регистрация: 15.07.2013
Сообщений: 18,535
17.12.2017, 02:09 2
Вы ничего не напутали в формулировке вашего учебного задания?
Ну 1 и 2 задание реализовать - как "два пальца об асфальт". А вот третье...
Для 8-битного процессора 8051 задача умножения/деления двух 16-битных чисел уже выливается в весьма сложную процедуру.
0
1182 / 657 / 113
Регистрация: 15.05.2012
Сообщений: 4,063
17.12.2017, 08:02 3
Цитата Сообщение от Kalancha Посмотреть сообщение
перемножить числа.
Легко.
Цитата Сообщение от northener Посмотреть сообщение
в весьма сложную
Относительно первой и второй. Достаточно прочитать Фрунзе "Микроконтроллеры? Это же просто!" и убедиться в этом.
0
Модератор
Эксперт по электронике
8959 / 6725 / 921
Регистрация: 14.02.2011
Сообщений: 23,737
17.12.2017, 09:17 4
Цитата Сообщение от pyzhman Посмотреть сообщение
Легко.
ой ли
смотрим условие
Цитата Сообщение от Kalancha Посмотреть сообщение
r0–r3 первое беззнаковое 32-битовое число и в r4–r7 – второе и возвращающие результат в виде знакового 64-битового
как из безнакового получить знаковое?
например умножь FFFFFFFF(4294967295) на FFFFFFFF
получим FFFFFFFE00000001( в знаковом -8589934591)
0
487 / 333 / 33
Регистрация: 15.08.2011
Сообщений: 1,078
17.12.2017, 10:33 5
Цитата Сообщение от ValeryS Посмотреть сообщение
получим FFFFFFFE00000001( в знаковом -8589934591)
А его и не возможно перевести в знаковое при заданном в условии количестве разрядов. Надо либо ввести знак переполнения (т.е. ошибка операции), либо оставить как есть. Так как другие числа переводятся в знаковые без изменения содержимого, а флаг ошибки автоматически получается в самом старшем разряде.
0
 Аватар для Ethereal
6772 / 2740 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
23.12.2017, 03:08 6
Цитата Сообщение от ValeryS Посмотреть сообщение
как из безнакового получить знаковое?
Так условие сформулировано не вполне корректно.

Добавлено через 13 минут
Цитата Сообщение от northener Посмотреть сообщение
Для 8-битного процессора 8051 задача умножения/деления двух 16-битных чисел уже выливается в весьма сложную процедуру.
На вскидку вроде бы так (умножение 16-битных беззнаковых):
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
; Z = X * Y
        mov     a, X_lo
        mov     B, Y_lo
        mul     ab
        mov     Z_lo, a
        mov     Z_melo, B
;
        mov     a, X_hi
        mov     B, Y_lo
        mul     ab
        add     a, Z_melo
        mov     Z_melo, a
        jnc     @1
        inc     B
@1:     mov     Z_mehi, B
;
        mov     a, X_lo
        mov     B, Y_hi
        mul     ab
        add     a, Z_melo
        mov     Z_melo, a
        mov     a, B
        addc    a, Z_mehi
        mov     Z_mehi, a
        clr     a
        rlc     a
        mov     Z_hi, a
;
        mov     a, X_hi
        mov     B, Y_hi
        mul     ab
        add     a, Z_mehi
        mov     Z_mehi, a
        mov     a, B
        addc    a, Z_hi
        mov     Z_hi, a
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.12.2017, 03:08
Помогаю со студенческими работами здесь

На перегрузку операторов. Описать класс комплексных чисел. Реализовать операцию сложения, умножения, вычитания
На перегрузку операторов. Описать класс комплексных чисел. Реализовать операцию сложения, умножения, вычитания, проверку на равенство...

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

Отладить функцию для сложения, вычитания, умножения и деления двух чисел
Не могу найти ошибок,программа не правильно работает. Вот условие : Напишите программу, которая использукет 4 функции. Каждая функция...

Класс для выполнения операций сложения, вычитания и умножения комплексных чисел
Условие: Составить описание класса для представления комплексных чисел. Обеспечить выполнение операций сложения, вычитания и умножения...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

Новые блоги и статьи
Java Micronaut в Docker: контейнеризация с Maven и Jib
Javaican 16.03.2025
Когда речь заходит о микросервисной архитектуре на Java, фреймворк Micronaut выделяется среди конкурентов. Он создан с учётом особенностей облачных сред и контейнеров, что делает его идеальным. . .
Управление зависимостями в Java: Сравнение Spring, Guice и Dagger 2
Javaican 16.03.2025
Инъекция зависимостей (Dependency Injection, DI) — один из фундаментальных паттернов проектирования, который радикально меняет подход к созданию гибких и тестируемых Java-приложений. Суть этого. . .
Apache Airflow для оркестрации и автоматизации рабочих процессов
Mr. Docker 16.03.2025
Управление сложными рабочими процессами — одна из главных головных болей инженеров данных и DevOps-специалистов. Представьте себе: каждый день нужно запускать десятки скриптов в определенной. . .
Оптимизация приложений Java для ARM
Javaican 16.03.2025
ARM-архитектура переживает настоящий бум популярности в технологическом мире. Когда-то воспринимаемая исключительно как решение для мобильных устройств и встраиваемых систем, сегодня она штурмует. . .
Управление состоянием в Vue 3 с Pinia и Composition API
Reangularity 16.03.2025
Когда я начал работать с Vue несколько лет назад, мне казалось достаточным использовать простую передачу данных через props и события между компонентами. Однако уже на среднем по сложности проекте. . .
Введение в DevSecOps: основные принципы и инструменты
Mr. Docker 16.03.2025
DevSecOps - это подход к разработке программного обеспечения, который объединяет в себе принципы разработки (Dev), безопасности (Sec) и эксплуатации (Ops). Суть подхода заключается в том, чтобы. . .
GitHub Actions vs Jenkins: Сравнение инструментов CI/CD
Mr. Docker 16.03.2025
В этой битве за эффективность и скорость выпуска программных продуктов ключевую роль играют специализированные инструменты. Два гиганта в этой области — GitHub Actions и Jenkins — предлагают разные. . .
Реактивное программировани­е с Kafka Stream и Spring WebFlux
Javaican 16.03.2025
Реактивное программирование – это программная парадигма, ориентированная на потоки данных и распространение изменений. Она позволяет выражать статические или динамические потоки данных и. . .
Простая нейросеть на КуМир: Учебное пособие по созданию и обучению нейронных сетей
EggHead 16.03.2025
Искусственные нейронные сети — удивительная технология, позволяющая компьютерам имитировать работу человеческого мозга. Если вы хотя бы немного интересуетесь современными технологиями, то наверняка. . .
Исполнитель Кузнечик в КуМир: Решение задач
EggHead 16.03.2025
Среди множества исполнителей в системе КуМир особое место занимает Кузнечик — простой, но невероятно полезный виртуальный персонаж, который перемещается по числовой прямой, выполняя ваши команды. На. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru