| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Asm для начинающих > сложение массивов |
| Автор: Kronit 9.12.2006, 22:59 | ||
Здравствуйте..нужно решить задачу по сложению матриц, но вначале я решил попробовать просто с массивами и что-то не вышло(
только в результате мне выводится не получаемые значения, а ерунда...почему не могу понять.. И еще, можно ли реализовать сложение массивов без stos и lods или эти команды обязательны? подскажите плиз.. |
| Автор: anwe 10.12.2006, 10:29 | ||
Не обязательны, если значешь их суть... |
| Автор: sgi1981 10.12.2006, 17:02 |
| Ну так обработка прерывания int 21 изменяет содержимое регистров общего назначения используемых в цикле. |
| Автор: Kronit 10.12.2006, 17:48 | ||||
Ну тогда надо сделать два цикла: один для сложения, 2-й для выведения массива на экран я переписал так:
Но почему он мне ничего не выдает, а лишь пустые символы вместо 6789 ?? Ткните меня носом в ошибку пожалуйста) |
| Автор: anwe 10.12.2006, 21:13 | ||||||
sgi1981,
Kronit, делать все можно и в одном цикле. Ошибка здесь:
Если у тебя di уже содержит адрес массима 3, то такая запись заносит элемент из третьего массива по адресу, равному адресу массива 3. И второе. Посмотри что делают stos к регистром di. Поэтому надо отвести и вернуть его:
|
| Автор: Kronit 10.12.2006, 23:29 |
| anwe , СПАСИБО! Все работает теперь. И еще вопрос: можно ли без команд stos и lods обойтись? т.е каким-либо образом обращаться к ЗНАЧЕНИЯМ элементов массива (а не их адресам) непосредственно -без стос, лодс.. ведь запись: add m1[si], 2 прибавит к адресу элемента массива двойку и m1[si] будет указывать на (si+2)й элемент. А если мне надо прибавить не к адресу, а к самому элементу двойку??? сори если замучил ламерскими вопросами.... |
| Автор: anwe 11.12.2006, 00:08 | ||
| Kronit, я же тебе уже писал, что можно без этих команд. А для изменения элемента массива тебе сначало надо его взять. Он лежит у тебя в памяти. Как без адреса ты его возмешь? Можно варьировать по-разному, хоть написать в абсолютном зачении
Использовать можно любую. Почитай про это. P.S. Не прочтешь письмо, не отправленное по твоему адресу |