IPB
ЛогинПароль:

> ПРАВИЛА РАЗДЕЛА!!!

1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!

> массив из натуральных чисел, Pascal+Assembler
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Создать прогрмму , где даны 10 натуральных чисел. Вывести на экран максимальные и минимальные числа.
Сидим с братом и не можем догнать ход проги , поняли одно что можно сделать через память или массив.
Пожалуста помогите народ , буду весьма благодарен !!!!!!!!!!!!!!!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Автооответчик
*****

Группа: Пользователи
Сообщений: 1 188
Пол: Мужской
Реальное имя: Александр

Репутация: -  16  +


естественно ругается - ebx это 32-битный регистр, tp - 16-битный компилятор.

используй вместо ebx просто bx.


--------------------
Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Теперь стал ругаться на mov cx,i , не знает опреанд i nea.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата(CooLLeR-zzz @ 15.05.2006 15:57) *

Теперь стал ругаться на mov cx,i , не знает опреанд i nea.gif

Да не в том дело, что он не знает. Ругается на то, что ты в 2-х байтовый регистр CX пытаешься однобайтовое значение i засунуть... Кстати, тут еще 2 проблемы. Поскольку код изначально тестировался на 32-битном компиляторе, массив состоит из элементов типа Integer, а на 32-битах размер Integer-а равен 4 байтам, ты работаешь с 16-битным компилятором, придется смещение менять на 2...

И еще. WORD PTR не забывай, указывай компилятору, что ты работаешь именно с 2-х байтовыми элементами массива...
Program Posled;
Const
n = 10;
mas: array[1 .. n] of integer =
(1, 4, 2, 7, 3, 8, 4, 2, 10, 9);

var
i, j: integer;
Begin
{
for i := 1 To n Do Begin
write('?'); Readln(Mas[i]);
end;
}

i := n;
asm
dec i

@CycleExt:
xor bx, bx
mov cx, i
mov si, 0

@CycleIn:
mov di, WORD PTR Mas[si]
cmp di, WORD PTR Mas[si+2]
jg @Exchange
add si,2
loop @CycleIn

jmp @Check

@Exchange:
mov bx, WORD PTR Mas[si+2]
mov WORD PTR Mas[si+2], di
mov WORD PTR Mas[si],bx
add si,2
loop @CycleIn

@Check:
cmp bx,0
je @Exit
jmp @CycleExt

@Exit:
end;;

writeln;
For i := 1 To n Do
Write(Mas[i]:6);
End.
 К началу страницы 
+ Ответить 

Сообщений в этой теме
CooLLeR-zzz   массив из натуральных чисел   11.05.2006 22:42
red_alex   Требуется вывести максимальное и минимальное чис…   13.05.2006 14:12
CooLLeR-zzz   Ну это тоесть дана любые 10 натуральных числел , и…   13.05.2006 23:02
xds   program MinMax; var a: array[1..10] of Integer;…   14.05.2006 12:23
CooLLeR-zzz   xds извени пожалйста что ещё раз побеспокоил , пом…   14.05.2006 14:07
CooLLeR-zzz   Огромное огромное огромное СПАСИБО !!…   14.05.2006 12:54
red_alex   можно еще и вот так: program poisk; var a …   14.05.2006 14:14
CooLLeR-zzz   :rolleyes: red_alex , xds большое , прибольшое сп…   14.05.2006 17:18
volvo   Тогда иди сюда: FAQ: Методы сортировок -> Реал…   14.05.2006 17:25
CooLLeR-zzz   Вот что у меня получилось пузырьковой сортировкой …   15.05.2006 13:28
CooLLeR-zzz   Благодарю :good:   15.05.2006 8:45
GoodWind   а текст "ругани" привести возможно? да …   15.05.2006 13:56
CooLLeR-zzz   Народ а что такое с задачей (найти макс. и мин. чи…   15.05.2006 14:14
CooLLeR-zzz   :wacko: GoodWin там компилятор ругается на команд…   15.05.2006 14:26
GoodWind   естественно ругается - ebx это 32-битный регистр, …   15.05.2006 15:04
CooLLeR-zzz   Теперь стал ругаться на mov cx,i , не знает опр…   15.05.2006 19:57
volvo   Теперь стал ругаться на mov cx,i , не знает оп…   15.05.2006 20:41
xds   Натуральные - это целые положительные числа. Кстат…   16.05.2006 3:47
CooLLeR-zzz   Я использую обычный Turbo Pascal 7 со встроенным а…   16.05.2006 8:20
CooLLeR-zzz   Ребята помогите составить алгоритм программы , ну…   18.05.2006 17:55


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.11.2025 19:17
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name