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

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


Хостинг Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг на Windows 2008

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

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

Выпуск № 1080
от 07.10.2008, 17:05

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

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


Вопрос № 145787: Уважаемые эксперты, помогите пожалуйста. Вот эта чудная программа у меня должна была выводить системную дату. Год выдает как положено, а месяц и день кривой выходит....

Вопрос № 145.787
Уважаемые эксперты, помогите пожалуйста. Вот эта чудная программа у меня должна была выводить системную дату. Год выдает как положено, а месяц и день кривой выходит.

Приложение:

Отправлен: 02.10.2008, 16:50
Вопрос задал: Sergik1977 (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 6)

Отвечает: Airyashov
программа работает нормально, только не нужно рассматривать день и месяц как число из 4-х байт.

mov ax, dx
xchg dh,dl
and ax,00ffh ;день
and dx,00ffh ;месяц
push ax
push dx
mov ax,cx ;сохраним месяц и день в AX

добавить еще один вывод с извлечение из стека

функция перевода неверно написана второй
inc si
лишний
Ответ отправил: Airyashov (статус: 8-ой класс)
Ответ отправлен: 02.10.2008, 17:16
Оценка за ответ: 5

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Sergik1977!

Всё правильно выводится, т.к. функция получения даты возвращает в регистре СХ год, а в регистрах DH и DL- месяц и число соответсвенно.
В десятичную форму Вы переводите регистр DX т.е. если сегодня 10:2 то получается 10*256+2=2562. По Вашей программе нужно при выводе числа и месяца обнулять старший байт.
Код:
pop ax
push ax
xor ah,ah
call DEC_ASC2;вывод числа
;
;вывод числа
;
pop ax
mov al,ah
xor ah,ah
call DEC_ASC2;вывод месяца

Удачи!
---------
Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор)
Украина, Киев
Тел.: +380979536619
Адрес: Украина г.Киев
----
Ответ отправлен: 02.10.2008, 17:40
Оценка за ответ: 5


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

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

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

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

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

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


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


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 5.3 RC 2 от 09.09.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное