Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Ассемблер? Это просто! Учимся программировать


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler (Ассемблер)

Выпуск № 942
от 31.12.2007, 16:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 363, Экспертов: 17
В номере:Вопросов: 1, Ответов: 1

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 116060: Здравствуйте, господа эксперты. Помогите пожалуста "чайнику" (мне) разобраться кое с чем. Ассемблер изучаю недавно и впервые в своей жизни. Надо вычислить сумму элементов имеющих нечетные значения для одномерного массива, состоящего из 10 ц...

Вопрос № 116.060
Здравствуйте, господа эксперты. Помогите пожалуста "чайнику" (мне) разобраться кое с чем. Ассемблер изучаю недавно и впервые в своей жизни. Надо вычислить сумму элементов имеющих нечетные значения для одномерного массива, состоящего из 10 целых чисел в диапазоне от -10...10. Даже не знаю с чего начать написание алгоритма. Буду признательна за любую помощь и информацию. Спасибо.
Отправлен: 26.12.2007, 16:31
Вопрос задала: Другова Елена Аркадьевна (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Другова Елена Аркадьевна!
Алгоритм такой:
mov cx,10 ;десять элементов
mov si,offset massiv ;настраиваемся на массив
cld ;регистр SI будет увеличиватся
xor bx,bx ;в этом регистре будет сумма
LoopSumma: ;метка цикла суммирования
lodsb ;читаем очередной элемент в регистр AL
push ax ;сохраняем в стеке регистр АХ
shr al,1 ;сдвигаем вправо на один бит, в CF будет младший бит, для нечетного числа он будет равен 1
pop ax ;востанавливаем регистр
jnc noSumma ;проверяем флаг CF,
add bl,al ;суммируем нечетные числа
noSumma: loop LoopSumma ;цикл суммирования

ps:вопросы задавайте в мини-форум
Удачи!
---------
И только наступив на грабли мы приобретаем драгоценный опыт!
Ответ отправил: Зенченко Константин Николаевич (статус: Профессионал)
Украина, Киев
Тел.: +380958380164
Адрес: Украина г.Киев
----
Ответ отправлен: 26.12.2007, 17:57
Оценка за ответ: 5


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.66 от 23.12.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное