Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
7 / 8 / 1
Регистрация: 30.09.2010
Сообщений: 33
1

Вывод найбольшего числа из массива и номер его последнего вхождения

24.10.2010, 00:08. Показов 754. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!
В общем есть задание прочитать массив, вывести наибольшее число и номер его последнего вхождения.
Все у меня получается, только вот с номером его последнего вхождения - никак.
Вот сам код, который считывает массив и выводит большее число из него:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
............
.CONST
MAS DW 5 DUP (?)
 
START
MOV SI, 0
MOV BX, -100
MOV CX, 5
 
CKL:
RWORD AX
MOV MAS[SI], AX
CMP MAS[SI], BX
JL FINISH
MOV BX, MAS[SI]
JMP FINISH
FINISH:
ADD SI, 2
LOOP CKL
 
WWORD BX
.......
Скажите пожалуйста как вывести еще номер большего числа?
Если возможно - посоветуйте как реализовать на 16-разрядном ассемблере.
Заранее благодарен!

Добавлено через 4 минуты
Надо под DOS
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2010, 00:08
Ответы с готовыми решениями:

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

Максимальный элемент массива и его номер и сумму элементов массива расположенных до последнего положительного элемента
Максимальный элемент массива и его номер и сумму элементов массива расположенных до последнего...

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

Номер последнего вхождения элемента a в список L
Собсна, проблема заключается в том, что необходимо сделать это с обработкой подсписков. без...

6
69 / 74 / 0
Регистрация: 15.12.2008
Сообщений: 302
24.10.2010, 00:33 2
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
.CONST
MAS DW 5 DUP (?)
 
START
MOV SI, 0
xor di,di
MOV BX, -100
MOV CX, 5
 
CKL:
RWORD AX
MOV MAS[SI], AX
CMP MAS[SI], BX
JL FINISH
MOV BX, MAS[SI]
mov di,si
JMP FINISH
FINISH:
ADD SI, 2
LOOP CKL
 
WWORD BX
WWORD di
.......
0
7 / 8 / 1
Регистрация: 30.09.2010
Сообщений: 33
24.10.2010, 00:42  [ТС] 3
Нет, не работает. Точнее работает, но результат не верный
Можно еще как-нибудь реализовать?
0
65 / 65 / 1
Регистрация: 14.04.2010
Сообщений: 170
24.10.2010, 00:47 4
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
CSEG segment
org 100h
 
proga:
mov si,offset mas1
mov cx,0
mov bl,[si]
@1:
    lodsb
    cmp al,bl
    ja @f
    inc cx
    cmp cx,len
    je ex
    jmp @1
@@:
    mov bl,al    ;запись наибольшего
    mov dx,si    ;номер вхождения
    dec dx
    inc cx
    cmp cx,len
    je ex
    jmp @1
 
ex:
ret
 
mas1 db 5,4,0fh,0ah,9
len equ $-mas1
 
CSEG ends
end proga
0
7 / 8 / 1
Регистрация: 30.09.2010
Сообщений: 33
24.10.2010, 00:51  [ТС] 5
мммм....у меня такие команды не читаются....
это 16-разрядный? под дос?
0
65 / 65 / 1
Регистрация: 14.04.2010
Сообщений: 170
24.10.2010, 00:58 6
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
37
.8086
.model small
.stack 100h
.data
mas1 db 5,4,0fh,0ah,9
len equ $-mas1
 
.code
proga:
mov dx,@stack
mov ss,dx
mov dx,@data
mov ds,dx
mov si,offset mas1
mov cx,0
mov bl,[si]
@1:
    lodsb
    cmp al,bl
    ja @f
    inc cx
    cmp cx,len
    je ex
    jmp @1
@@:
    mov bl,al
    mov dx,si
    dec dx
    inc cx
    cmp cx,len
    je ex
    jmp @1
 
ex:
mov ah,4ch
int 21h
end proga
0
7 / 8 / 1
Регистрация: 30.09.2010
Сообщений: 33
24.10.2010, 00:59  [ТС] 7
спасибо!
0
24.10.2010, 00:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.10.2010, 00:59
Помогаю со студенческими работами здесь

Определить номер последнего вхождения одной строки в другую
программа определяет номер последнего вхождения одной строки в другую. Program fin; uses ...

Найти номер последнего элемента массива вещественных чисел, большего от заданного числа
Написать функцию, которая находит номер последнего элемента массива вещественных чисел, большего от...

Рекурсия Найти номер последнего вхождения максимального значения в последовательность длины n
Рекурсия Найти номер последнего вхождения максимального значения в последовательность длины...

Определить номер позиции последнего вхождения строки st1 в строку st2
Помогите пожалуйста зарешать В заданном тексте замените последовательность символов X(i) на X и...

Рекурсия: найти номер последнего вхождения минимального значения в последовательность длины n
Найти номер последнего вхождения минимального значения в последовательность длины n. Нужно было...

Дан массив натуральных чисел. Заменить числа их факториалами. Найти номер последнего положительного элемента массива
Дан массив натуральных чисел. Заменить числа их факториалами. Найти номер последнего положительного...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru