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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2010, 22:00   #1
vlad_zasranec
Пользователь
 
Регистрация: 29.01.2010
Сообщений: 11
По умолчанию FlatASSembler. Массивы.

Есть массив. Надо найти произведение всех отрицательных элементов. Я как ни старался не смог работать с одним элементом массива. Вроде бы и сделал цикл (по АНАЛогии с языками высшего уровня) в котором буквой, к примеру I указывался бы элемент массива. Но ннет, не работает. Сравнение для условных переходов через Х87 у меня получилось, но всё равно. Вот недоделаный набросок. Кто объяснит - спасибо.
Код:
format pe console
entry start
Include 'D:\fasmw168\INCLUDE\win32axp.inc'
section '.text' code readable executable
start:
go:
finit
mov cx,15
mov si,0
push 0
fild mas[si]
fcom
jb minus
ja plus
fwait
minus:
mov eax,mas[si]
mul eax
mov [temp],eax

plus:
inc si
cmp cx,si
jne go
je end
end:
invoke Exitprocess, 0
ret
section '.data' data readable writable
f4 dd "%d",0
mas dd -5,1,10,-9,-50,-65,-1,5,36,94,58,-54,-3,7,1
temp dd ?
temp2 dd ?
i db 0
cr db 13,10,0
t0 db "BBeguTe ",13,10,0
t1 db "Pe3yJlbTaT ",13,10,0
section '.idata' import data readable writeable
library msvcrt, 'msvcrt.dll', kernel32, 'kernel32.dll'
import msvcrt, printf, 'printf', getchar,'getchar', scanf, 'scanf'
import kernel32, Exitprocess, 'ExitProcess'
Если кто-то не сможет помочь доделать программу, то просто объясните как обращаться к элементу массива, желательно командами сопроцессора. Или напишите где прочитать, всё что нахожу я - для масма. Они хоть и незначительно - но отличаются
vlad_zasranec вне форума Ответить с цитированием
Старый 21.12.2010, 22:31   #2
vlad_zasranec
Пользователь
 
Регистрация: 29.01.2010
Сообщений: 11
По умолчанию

перефразирую вопрос: как можно адресовать элемент массива, загружая его через сопроцессор? (Если занести в стек сопроцессора командой
Код:
fld dword mas[имя регистра в котором цифра-счетчик)]
ничего не выходит
vlad_zasranec вне форума Ответить с цитированием
Старый 21.12.2010, 22:57   #3
vlad_zasranec
Пользователь
 
Регистрация: 29.01.2010
Сообщений: 11
По умолчанию

бамп. Есть ведь тут гуру низкоуровневого программирования?
vlad_zasranec вне форума Ответить с цитированием
Старый 21.12.2010, 22:57   #4
vlad_zasranec
Пользователь
 
Регистрация: 29.01.2010
Сообщений: 11
По умолчанию

бамп. Есть ведь тут гуру низкоуровневого программирования?
vlad_zasranec вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические массивы и массивы варианты N@stya Помощь студентам 0 11.06.2010 21:09
С++, Массивы, динамические массивы. -Sunshine- Помощь студентам 1 19.04.2010 02:17
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
массивы natasha971929 Помощь студентам 2 14.12.2009 23:47
Массивы на С++ Wia Помощь студентам 9 20.12.2008 02:56