Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler: i8080/8085/KP580
Войти
Регистрация
Восстановить пароль
 
Паск
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
1

[mod1asm] 2^4 + 3^4 Написать программу, которая не превышает 15 строк, используя цикл

15.10.2017, 16:02. Просмотров 290. Ответов 10
Метки нет (Все метки)

2^4 + 3^4 Написать программу, которая не превышает 15 строк, используя цикл

я написал программу, но она не помещается в 15 строк, так как там два цикла, можно ли в один цикл поместить?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2017, 16:02
Ответы с готовыми решениями:

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

Написать программу, которая меняет порядок следования строк файла на обратный, используя стек (Delphi)
Дан текстовый файл. Написать программу, которая меняет порядок следования строк...

Написать программу, которая определяет количество учеников в классе, чей рост превышает средний
Написать программу, которая определяет количество учеников в классе, чей рост...

Написать программу, которая определяет количество учеников в классе, чей рост превышает средний.
Написать программу, которая определяет количество учеников в классе, чей рост...

Написать программу, которая определяет количество учеников в классе, чей рост превышает средний.
Написать программу, которая определяет количество учеников в классе, чей рост...

10
ФедосеевПавел
Модератор
4153 / 2263 / 919
Регистрация: 01.02.2015
Сообщений: 7,527
15.10.2017, 16:15 2
А зачем здесь цикл?
К примеру 3^4
Assembler
1
2
3
    mov ax, 3
    mul ax
    mul ax
Столько же и для 2^4.
0
Паск
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
15.10.2017, 16:23  [ТС] 3
ФедосеевПавел,
Вообще нужно написать для a^x+b^x=y, с циклом, а с числами - это мой пример, для наглядности

Добавлено через 5 минут
это для а^x

Assembler
1
2
3
4
5
6
0 MOVR 1,0C запишем в регистр 1 содержимое ячейки 12 - константу 1 
1 MOVR 0,0E запишем в регистр 0 содержимое ячейки 14 - показатель степени 
2 MRM  1,0F выполним очередную операцию умножения регистра на A 
3 LOOP 02 замкнем цикл с началом по адресу 2. 
4 MOVM 1,0D запишем содержимое регистра 1 - результат - по адресу 0D 
5 STOP  останов
0
Паск
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
15.10.2017, 17:08  [ТС] 4
1. INP A - ввод слова из канала ввода и запись его по адресу A.
2. OUT A - вывод содержимого ячейки памяти с адресом A в канал вывода.
3. MOVR R,A - загрузка регистра R содержимым ячейки памяти с адресом A.
4. MOVM R,A - запись содержимого регистра R в ячейку памяти с адресом A.
5. ARM R,A - сложить содержимое регистра R с содержимым ячейки памяти с адресом A.
6. SRM R,A - из содержимого регистра R вычесть содержимое ячейки памяти с адресом A.
7. MRM R,A - перемножить содержимое регистра R и ячейки памяти с адресом A.
8. DRM R,A - поделить содержимое регистра R на содержимое ячейки памяти с адресом A.
9. ARR R1,R2 - сложить содержимое регистров R1 и R2.
10. SRR R1,R2 - из содержимого R1 вычесть содержимое R2.
11. MRR R1,R2 - содержимое регистра R1 умножить на содержимое регистра R2.
12. DRR R1,R2 - содержимое регистра R1 поделить на содержимое регистра R2.
13. AMM A1,A2 - сложить содержимое ячеек памяти с адресами A1 и A2.
14. SMM A1,A2 - из содержимого ячейки с адресом A1 вычесть содержимое ячейки памяти с адресом A2.
15. MMM A1,A2 - перемножить содержимое ячеек памяти с адресами A1 и A2.
16. DMM A1,A2 - содержимое ячейки памяти с адресом A1 поделить на содержимое ячейки памяти с адресом A2.
17. JMP A - безусловный переход по адресу A.
18. JV A - переход по переполнению по адресу A.
19. JP A - переход по положительному результату по адресу A.
20. JPV A - переход по переполнению или положительному результату по адресу A.
21. JZ A - переход по нулевому результату.
22. JZV A - переход по неотрицательному и неположительному результату.
23. JZP A - переход по положительному или нулевому результату.
24. JZPV A - переход по неотрицательному результату.
25. JN A - переход по отрицательному результату.
26. JNV A - переход по отрицательному результату или переполнению.
27. JNP A - переход по отрицательному или нулевому результату.
28. JNPV A - переход по ненулевому результату.
29. JNZ A - переход по отрицательному или нулевому результату.
30. JNZV A - переход по неположительному результату.
31. JNZP A - переход по непереполнению.
32. LOOP A - организация цикла со счетчиком в регистре 0.
33. STOP - останов.
0
Паск
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
15.10.2017, 17:23  [ТС] 5
ВОТ НА СНИМКЕ СКРИН
0
Миниатюры
[mod1asm] 2^4 + 3^4 Написать программу, которая не превышает 15 строк, используя цикл  
Паск
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
15.10.2017, 17:41  [ТС] 6
ПРИКРЕПИЛ ФАЙЛ
0
Вложения
Тип файла: 7z MOD1ASM.7z (11.6 Кб, 2 просмотров)
ФедосеевПавел
Модератор
4153 / 2263 / 919
Регистрация: 01.02.2015
Сообщений: 7,527
15.10.2017, 17:45 7
Может быть так - добавил строки 4 и 7, только адреса взял наугад
Assembler
1
2
3
4
5
6
7
8
9
0 MOVR 1,0C запишем в регистр 1 содержимое ячейки 12 - константу 1
1 MOVR 2,0C запишем в регистр 2 содержимое ячейки 12 - константу 1
2 MOVR 0,0E запишем в регистр 0 содержимое ячейки 14 - показатель степени
3 MRM  1,0F выполним очередную операцию умножения регистра на A
4 MRM  2,1F выполним очередную операцию умножения регистра на B
5 LOOP 03 замкнем цикл с началом по адресу 2.
6 MOVM 1,0D запишем содержимое регистра 1 - результат - по адресу 0D
7 MOVM 1,0D запишем содержимое регистра 1 - результат - по адресу 1D
8 STOP  останов
Добавлено через 1 минуту
Ни я ни кто другой не будет запускать на домашнем компьютере программу неизвестного происхождения.
0
Паск
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
15.10.2017, 18:01  [ТС] 8
регистра всего два: 0 и 1
0
ФедосеевПавел
Модератор
4153 / 2263 / 919
Регистрация: 01.02.2015
Сообщений: 7,527
15.10.2017, 18:10 9
Куда помещается результат команды
Цитата Сообщение от Паск Посмотреть сообщение
15. MMM A1,A2 - перемножить содержимое ячеек памяти с адресами A1 и A2.
0
Паск
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
15.10.2017, 18:17  [ТС] 10
в ячейку памяти А1
0
ФедосеевПавел
Модератор
4153 / 2263 / 919
Регистрация: 01.02.2015
Сообщений: 7,527
15.10.2017, 18:21 11
Тогда это и есть решение.
Сначала в ячейку памяти А1 помещается 1, и в цикле умножается на А2=А
Тоже самое для А3 и А4=В.
0
15.10.2017, 18:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2017, 18:21

Написать программу, которая определяет количество учеников в классе, чей рост превышает средний
Написать программу, которая определяет количество учеников в классе, чей рост...

Написать программу, которая определяет количество учеников в классе, чей рост превышает средний.
Написать программу, которая определяет количество учеников в классе, чей рост...

Написать программу используя цикл for
Написать программу, которая выводит таблицу значений функции у =|х + 2|....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru