Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2010, 21:34   #1
gellalo
 
Регистрация: 19.05.2010
Сообщений: 3
По умолчанию Сортировка массива

Написанную мною сортировку массива по возрастанию
data segment
mes1 db 'HA4AJlbHbIU MACCUB:$',10,13
mes2 db ' KOHE4HbIU MACCUB:$'
n equ 9
mas dw 2,7,4,0,1,8,3,6,5,9
i dw 0
j dw 0
temp dw 0
data ends

stk segment stack
dw 128 dup (0)
stk ends

assume CS: code, DS: data
code segment
begin:
mov AX, data
mov DS, AX

mov AH, 09h
mov DX, offset mes1
int 21h

mov cx,10
mov si,0

show_primary:
mov dx,mas[si]
add dl,30h
mov ah,02h
int 21h
add si,2
loop show_primary

internal:
mov j,9
jmp cycl_j
exchange:
mov bx,i
shl bx,1
mov ax,mas[bx]
mov bx,j
shl bx,1
cmp ax,mas[bx]
jle lesser

mov bx,i
shl bx,1
mov temp,ax

mov bx,j
shl bx,1
mov ax,mas[bx]
mov bx,i
shl bx,1
mov mas[bx],ax

mov bx,j
shl bx,1
mov ax,temp
mov mas[bx],ax
lesser:
dec j
cycl_j:
mov ax,j
cmp ax,i
jg exchange

inc i
cmp i,n
jl internal

mov AH, 09h
mov DX, offset mes2
int 21h

mov cx,10
mov si,0

show:
mov dx,mas[si]
add dl,30h
mov ah,02h
int 21h
add si,2
loop show

mov AH, 08h
int 21h
mov AH, 4Ch
mov AL, 00h
int 21h

code ends
end begin

Переделать по след вид:
10 элементов массива. 1-й и 2-й элемент массива считать с клавиатуры. Все нечетные элементы=[i-2]+[i-1] (сложение предыдущего и предпредыдущего), а четные=[i-2]*i (предпредыдущий уноженный на индекс). Прошу помощи...
gellalo вне форума Ответить с цитированием
Старый 20.05.2010, 14:44   #2
gellalo
 
Регистрация: 19.05.2010
Сообщений: 3
По умолчанию

Подскажите хотя бы как считать 1 и 2 элементы массива правильно
gellalo вне форума Ответить с цитированием
Старый 20.05.2010, 16:32   #3
airyashov
Форумчанин
 
Регистрация: 02.04.2008
Сообщений: 358
По умолчанию

считать так можно
Код:
mov ax,mas[0] ;1
mov ax,mas[2] ;2
ввод с клавиатуры здесь можно посмотреть
http://www.cyberforum.ru/assembler/thread54461.html
неплохо пишу на ассемблере для 80х86
icq: 3(один)7748666
mail: airyashov(а)inbox.ru
airyashov вне форума Ответить с цитированием
Старый 22.05.2010, 18:27   #4
gellalo
 
Регистрация: 19.05.2010
Сообщений: 3
По умолчанию

Спасибо большое
gellalo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка массива 8edrius Помощь студентам 0 08.05.2010 03:31
Сортировка массива в С++ olnesm Помощь студентам 1 19.04.2010 19:47
Сортировка массива Paladast Помощь студентам 2 18.01.2010 16:28