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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2010, 15:00   #1
Dolgan
 
Регистрация: 26.11.2010
Сообщений: 2
По умолчанию Описание задачи

Здраствуйте. Человек я тут новый) И походу надолго с вами. Нужна помощь в описании данного текста программы.
Кто нибудь поможет!? Я в ассемблере 0. А надо обьяснить людям как это все выполняется...

Задача на сортировку по убыванию.
Код:
.org 8000h
jmp start
Start:

module_xdata_to_data:                         
		mov DPTR, #8300h
mov R0, #8500h
	metka4:
		mov A, @R0
movx @DPTR, A
inc DPTR
inc R0
cjne R0, #86FFh, metka4

module_sort_massiv:                              
		mov R0, #8300h
	metka1:
		mov 4Ah, #8500h
		mov R2,  DPL
		jmp module_search_massiv       
	metka_vozvrata1:                         
		mov DPL,  R2
		mov  A,  #8500h
		inc  DPL
		movx  @DPTR,  A
mov @R0,  4Ah
inc  R0
cjne R0,  #50h, metka1
jmp module_data_to_xdata

module_search_massiv:
		mov DPTR,  #8500h
	metka2:
		movx  A, @DPTR
		inc DPTR
		mov R1, DPL
		cjne  A, 4Ah, metka3
metka_vozvrata2:
		cjne R1,  #50h,  metka2
		jmp  metka_vozvrata1
	metka3:
		jc metka_vozvrata2
mov 4Ah,  A
mov R2,  DPL
jmp metka_vozvrata2

module_data_to_xdata:
		mov DPTR,  #8500h
		mov  R0,  #8300h
	metka4:
		mov  A,  @R0
		movx  @DPTR,  A
inc DPTR
inc  R0
cjne  R0,  #Ah,  metka4

final:
end.

Последний раз редактировалось Stilet; 26.11.2010 в 15:20.
Dolgan вне форума Ответить с цитированием
Старый 26.11.2010, 15:22   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
cjne R0, #Ah, metka4
Ух ты... Я эту команду явно не знаю...

Кстати Насчет сортировки:
Код:
	.386
	.model flat,stdcall
	option casemap:none

.data
n			dw 12,20,5,1,0,49,3
k			dd 6
;_______________
.code
start:
lea esi,n
xor ecx,ecx
xor ebx,ebx
xor eax,eax
mov ecx,[k] ;Размер массива
a2:
push ecx
mov ecx, [k]
a1:
 mov ax,word ptr [esi] ; получаем элемент массива
 mov bx,word ptr [esi+2] ; получаем рядомлежащий следующий элемент массива
 cmp ax,bx ; сравниваем
 jl nogreat ; Если первый больше
 mov word ptr [esi+2],ax ; то меняем их местами
 mov word ptr [esi],bx
nogreat: ; иначе
 add esi, 2 ;Берем следующие
 loop a1
pop ecx
lea esi,n
loop a2
ret
end start
I'm learning to live...

Последний раз редактировалось Stilet; 26.11.2010 в 15:25.
Stilet вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Описание внутри HoBuHKuй Помощь студентам 1 02.06.2010 14:16
Описание класса. frem-dag Общие вопросы C/C++ 4 11.01.2010 19:53
Описание библиотек в Си papochka Общие вопросы C/C++ 1 28.10.2009 10:51
Описание к файлам Naposaram PHP 4 09.02.2009 09:24