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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2010, 12:18   #1
kniazkinP
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 11
По умолчанию Сортировка в области памяти

Доброе время суток! Дописываю программу сортировки элементов массива из 15 целых чисел, которая
располагает четные числа в одной, а нечетные в другой области памяти. Взгляните, правильно ли?
Просто не уверен насчёт начала...

Код:
DATA SEGMENT
MAS  DB  0, 5, 6, 1, 11, 2, 3, 1, 5,  6, 7, 8, 3, 0, 2 
DATA ENDS
;------------------------------------------------------------------------------------
STK SEGMENT         
DB      100 dup (?) 
STK ENDS
ASSUME DS:DATA, SS: STK, CS: CODE
;--------------------------------------------------------------------------------------
CODE SEGMENT             
Start:     MOV AX, DATA
Массив с 8040h - с числами
Ячейки с 8100:8101 - содержат адрес массива с четными числами
Ячейки с 8200:8201 - содержат адрес массива с нечетными числами

Код:
LXI H, 8070h
SHLD 8100h
LXI H, 8080h
SHLD 8200h
LXI  D, 8040h
MVI C,10h
 
M1:  LDAX D
ANI  01h
JNZ M2
LDA 8101h
LXI H, 8000h
MOV L, A
LDAX D
MOV M, A
INR L
MOV A,L
LXI H, 8101h
MOV M, A
INX D
DCR C
JNZ M1
JMP M3
M2:
LDA 8201h
LXI H, 8000h
MOV L, A
LDAX D
MOV M, A
INX L
MOV A, L 
LXI H, 8201h
MOV M,A
INX D
DCR C
JNZ M1
M3:
HLD
kniazkinP вне форума Ответить с цитированием
Старый 10.04.2010, 17:50   #2
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

прокомментировать не могу.
а для какой архитектуры этот код? а то че-то инструкции не сильно знакомы.
f.hump вне форума Ответить с цитированием
Старый 10.04.2010, 23:09   #3
kniazkinP
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 11
По умолчанию

Это assembler
kniazkinP вне форума Ответить с цитированием
Старый 10.04.2010, 23:16   #4
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

... для i8080 процессора видимо.
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Старый 12.04.2010, 08:38   #5
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,162
По умолчанию

kniazkinP
обычно пишут для i80x86 (от 8086 до Pentium'ов) на ассемблерах masm, nasm, yasm, fasm, tasm, PoAsm, a86, gas и т.д. и заметь, все это ассемблеры, а у тебя судя по синтаксису ассемблер или для i8080 или для i8085
Mikl___ вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение области экрана АлМазСофт Помощь студентам 5 28.01.2010 12:52
выделение области seregaAV110 Мультимедиа в Delphi 3 27.11.2008 21:33
Разбиение окна на области? HunterMan Win Api 2 03.04.2008 22:18
Карта области Dmitriy77 Общие вопросы Delphi 0 23.10.2007 18:46
ЭБС Тюменской области dron-s Софт 3 21.03.2007 22:31