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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2015, 02:21   #1
bbarmaley
Новичок
Джуниор
 
Регистрация: 02.02.2015
Сообщений: 3
По умолчанию Задача. Массивы (Assembler)

задача такая. Сформировать статический массив из 10 двухбайтных чисел, найти в нём отрицательные числа, сложить их и найти абсолютное значение результата. Код для ассемблера.

Код:
IDEAL				; Режим IDEAL
P386				; Тип процессора - Intel 80386


;Сегмент стека
SEGMENT _stack para use16 stack 'stack'
	db 256 dup(?)				; Выделение 256 байт в сегменте стека 
ENDS _stack

;Сегмент данных
SEGMENT _data para use16 public 'data'
        mas1 dw 1, 2, -3, -4, 5, 6, 7, 8, -9, 10
начало вот такое, дальше не знаю как осуществить. Заранее спасибо!

Последний раз редактировалось Stilet; 02.02.2015 в 07:51.
bbarmaley вне форума Ответить с цитированием
Старый 02.02.2015, 08:05   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Например так:
Код:
mov esi,mas1
mov ecx,10
xor eаx,eаx
for:
 cmp [esi],0
 jge no
 add eаx,[esi]
no:
 add esi,2
loop for
neg eаx
... В EАX будет абсолютное значение
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.02.2015, 19:34   #3
bbarmaley
Новичок
Джуниор
 
Регистрация: 02.02.2015
Сообщений: 3
По умолчанию

такие вот пироги
[IMG][/IMG]
bbarmaley вне форума Ответить с цитированием
Старый 02.02.2015, 19:52   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну и? Код мне телепатировать?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.02.2015, 03:49   #5
bbarmaley
Новичок
Джуниор
 
Регистрация: 02.02.2015
Сообщений: 3
По умолчанию

вот код
Код:
IDEAL				; Режим IDEAL
P386				; Тип процессора - Intel 80386


;Сегмент стека
SEGMENT _stack para use16 stack 'stack'
	db 256 dup(?)				; Выделение 256 байт в сегменте стека 
ENDS _stack

;Сегмент данных
SEGMENT _data para use16 public 'data'
        mas1 dw 1, 2, -3, -4, 5, 6, 7, 8, -9, 10 
        mas2 dw 10 dup (0)
        
ENDS _data

;Сегмент кода
SEGMENT _code para use16 public 'code'
	ASSUME 	cs:_code,ds:_data,ss:_stack,es:nothing
	
        Start:

          mov esi,mas1
         mov ecx,10
         xor eаx,eаx
for:
     cmp [esi],0
     jge no
     add eаx,[esi]
no:
    add esi,2
loop for
neg eаx
int 21h
ENDS _code
end start



________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 04.02.2015 в 11:11.
bbarmaley вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
assembler массивы matrinishna Помощь студентам 0 31.03.2011 22:10
assembler массивы tanek Помощь студентам 1 25.05.2010 06:53
assembler массивы FANROK Помощь студентам 0 17.05.2010 21:51
Assembler/Массивы verybadprogrammer Помощь студентам 8 30.03.2010 00:21
[Assembler] Массивы структур Opiym Помощь студентам 4 26.02.2010 18:52