Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: 2 задачи на нахождение чисел  (Прочитано 7877 раз)
0 Пользователей и 1 Гость смотрят эту тему.
sathal
Новенький

ru
Offline Offline

« : 10-03-2014 02:08 » 

Всем привет! Столкнулся с такой проблемой с написание программ на ассемблере, преподаватель сказал для решение данной задачи нужно использовать 50 команд. Помогите, кто разбирается в этом языке программирование.
1.Найти максимум из трех чисел, с учетом что 3 числа могут быть равными между собой
2.Найти сумму натуральных чисел от 1 до 9 используя различные циклы
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 10-03-2014 06:37 » 

sathal, я пока проблемы не вижу. Я вижу задачу, которую надо сделать. Делать за тебя её никто не будет. Т.е. сначала с тебя решение, пусть и неправильное, затем уже будут видны проблемы этого решения.

Использовать 50 команд - это в штуках, или 50 разных команд? Наверно в штуках. Ну, главное сделай <= 50 команд, а точно 50 можно подогнать холостым ходом.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
sathal
Новенький

ru
Offline Offline

« Ответ #2 : 10-03-2014 08:30 » 

вот пробовал нахождение максимально из трех, мне сказали не правильно
MOV AX,
MOV BX,B
CMP AX,BX
TNL M1
MOV AX,С
CMP AX,BX
JNL M2
MOV CX,BX
INT 20H

M1 MOV BX,C
CMP AX,BX
JNL M2
MOV CX,BX
INT 20H
M2 MOV CX,AX
INT 20H
Также сделал блок схемы сказали не правильно мой в верхний преподователя нижний
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 10-03-2014 11:21 » 

Цитата: sathal
MOV AX,
MOV BX,B
Чем первая строчка отличается от второй? Как устроена и работает инструкция MOV? В чём заключается ошибка?

Цитата: sathal
TNL M1
Что такое TNL? Я такой инструкции в x86 не знаю.

Т.е. складывается ощущение, что ты переписываешь с бумажки буквы, даже не понимая, что это такое. Очевидно, что это неправильный подход к делу.

Рисовать блок-схемы - это правильно. Но я советую рядом с каждой фигурой (блоком) блок-схемы поставить номер, а затем в программе под каждый номер блока написать отдельной группой строчек ассемблерный код, разделяя пустыми строчками и комментариями блоки. Так тебе самому будет лучше видно, что к чему. Например:
Код: (ASM)
; Блок номер 3
cmp     ax, bx
jnl     m1

; Блок номер 4
и т.д.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
lazymax
Интересующийся

ru
Offline Offline

« Ответ #4 : 14-03-2014 09:29 » new

а мне интересно, вы что не тестируете при учебе этот код? т.е все на бумажках и доске? это же скучно жесть
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines