WMmail.ru - сервис почтовых рассылок

пятница, 25 июня 2010 г.

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

Если выпуск не отображается корректно, то вы можете прочесть его на сайте

Реклама Отказаться от рекламы
 
Subscribe.Ru

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

Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

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

Чемпионы рейтинга экспертов в этой рассылке

Boriss
Статус: Академик
Рейтинг: 2466
• повысить рейтинг »
_Ayl_
Статус: Профессионал
Рейтинг: 1922
• повысить рейтинг »
vladisslav
Статус: 6-й класс
Рейтинг: 1227
• повысить рейтинг »

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

Номер выпуска:1366
Дата выхода:25.06.2010, 15:30
Администратор рассылки:Лысков Игорь Витальевич, Старший модератор
Подписчиков / экспертов:234 / 63
Вопросов / ответов:1 / 1
IRC-канал по теме:#assembler

Вопрос № 179157: Здравствуйте уважаемые эксперты! Помогите пожалуйста решить задачу на ассемблере: Дана последовательность байтов (положительные числа). Просуммировать их в цикле. Вывести 16-ричное представление суммы. Для организации вывода применить операции...



Вопрос № 179157:

Здравствуйте уважаемые эксперты! Помогите пожалуйста решить задачу на ассемблере:

Дана последовательность байтов (положительные числа). Просуммировать их в цикле. Вывести 16-ричное представление суммы. Для организации вывода применить операции сдвига
битов. Примечание: сумма может не помещаться в один байт.

В ассемблере я не очень, так что прошу с подробными комментариями. Программа Tasm 5.0. Заранее спасибо!

Отправлен: 20.06.2010, 15:00
Вопрос задал: Петров Юрий Иванович, Посетитель
Всего ответов: 1
Страница вопроса »


Отвечает Airyashov, Студент :
Здравствуйте, Петров Юрий Иванович.
например так
Код:
; сегмента стека
s_s segment stack "stack"
dw 100h dup(?)
s_s ends

; сегмента данных
d_s segment
n=10 ; количество элементов массива
A db 1,2,3,4,5,6,7,8,9,10 ; определить массив
HexStr db '0123456789ABCDEF' ; для перевода в 16 СС
d_s ends

; сегмента кода
c_s segment
assume ss:s_s,ds:d_s,cs:c_s;

main PROC ; точка входа
.286 ; разрешить команды 80286
mov ax,d_s ; копируем адрес
mov ds,ax ; сегмента данных

mov cx,n ; определим количество итераций
xor si,si ; индекс первого элемента
xor dx,dx ; dx=0 тут получим сумму массива
next:
add dl,A[si] ; dl=элемент массив А
adc dh,0 ; учтем возможный перенос
inc si ; перейти к следующему элементу
loop next ; продолжить цикл

; выведем значение на экран
rol dx,4 ; переместим старшие 4 разряда в младшие
mov cx,4 ; количество итераций цикла, так как в 16 разрядном регистре 4 тетрады
next_ch:
mov bx,dx ; bx=dx
and bx,0fh ; выделим слажшую тетраду
mov al,HexStr[bx] ; получить из строки соответствующий цифре символ для вывода
int 29h ; вывести al на экран
rol dx,4 ; перейти к следующей тетраде
loop next_ch ; продолжить цикл

mov ax,0c07h ; ожидаем нажатие клавиши
int 21h ; вызов DOS

mov ax,4C00h ; выход из программы
int 21h ; вызов DOS
main ENDP
c_s ends
END main ; определить точку входа в программу

Ответ отправил: Airyashov, Студент
Ответ отправлен: 20.06.2010, 16:34
Номер ответа: 262192

Оценка ответа: 5
Комментарий к оценке:
Спасибо!

Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 262192 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:

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

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

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2010, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2010.6.16 от 26.05.2010
    Обсудить выпуск
     
     Как вам этот выпуск ?  Дайте свой отзыв  или  Оцените   5    4    3    2    1,   можно письмом:  5    4    3    2    1
     
    Реклама Отказаться от рекламы
    Скачай журнал "Дела садовые" Скачай журнал "Дела садовые"
    Пруд на даче. Сборные садовые домики. Удивительно скороплодные саженцы.

      Надоела сутулая спина и обвислый живот? Надоела сутулая спина и обвислый живот?
    Тренажер Ab Rocket - великолепный пресс всего за несколько недель!

      Вспомни детство! Вспомни детство!
    Аппарат для приготовления сахарной ваты - отличное угощение!

     
     
    Реклама Отказаться от рекламы
    Антивирусная защита трафика.
    Traffic Inspector. Двойная проверка трафика от вредоносных программ.<>www.smart-soft.ru

    Новый Firefox3.6
    Быстрый и удобный браузер. Скачай бесплатно прямо сейчас!<>fx.yandex.ru

    Учим писать скрипты
    Сценарии для администрирования (BAT-ники и VB Script)<>www.sysengineering.ru

     
      Рассылки
    SoftSoft.ru - свежий софт
    Дайджест новых поступлений программ в каталог Softsoft.ru

    Подписаться:   на сайте    по почте

     
      Группы
    «1000 идей: идеи бизнеса со всего мира»
    Обсуждение идей бизнеса из коллекции проекта 1000 идей.
    «Бодибилдинг, Пауэрлифтинг! Группа посвящена полной информации по правильной и быстрой накачке мышц!»
    Группа посвящена полной информации по правильной и быстрой накачке мышц!!Упражнения для мышц написаны на простом человеческом языке без лишней информаци...
    «Передовые технологии в медицине»
    Передовые технологии в медицине!Все больше и больше людей интересуются - есть ли новые медицинские технологии, которые позволяют бороться с хроническими...
     
    Подписан адрес: admin10383.deep@blogger.com
    Код этой рассылки: comp.prog.assembler
    Архив рассылки
    Отписаться:  На сайте  Почтой
    Поддержка подписчиков
    Убрать рекламу
    Другие рассылки этой тематики
    Другие рассылки этого автора
    Рассылка производится: Subscribe.Ru / ЗАО «Интернет-Проекты» / О компании / Политика конфиденциальности

    Комментариев нет:

    Отправить комментарий