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

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


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

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

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

Выпуск № 1047
от 24.08.2008, 01:35

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

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


Вопрос № 141702: Здравствуйте, Уважаемые!!! Вот разбираюсь с командой xlat и хотела написать простейшую программку, но для меня она оказалась не простой. Вот допустим нам нужно ввести число от 0 до 15 в DEC, а затем вывести его на экран в hex виде. То есть уже по...

Вопрос № 141.702
Здравствуйте, Уважаемые!!!
Вот разбираюсь с командой xlat и хотела написать простейшую программку, но для меня она оказалась не простой. Вот допустим нам нужно ввести число от 0 до 15 в DEC, а затем вывести его на экран в hex виде. То есть уже по имеющейся таблице закодировать число. Вот нужна Ваша помощь Эксперты! Хотя без ввода цифры (то есть когда, в al уже занесено число) все получается. Вот тут я что-то вымудряла (1 вариант не получается, а во втором варианте получается):

Приложение:

Отправлен: 19.08.2008, 01:25
Вопрос задала: Alena De Lon (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 3)

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

Займемся строками с помощью которых Вы формируете число:
Код:
ror ax,4
shld dx,ax,4

Допустим при вводе числа 14, начинаем смотреть на регистры:
клавиша 1 - AL=31h,AH=02h,DX=0
команда ROR - AL=23h,AH=10h,DX=0000h
команда SHLD - AL=23h,AH=10h,DX=0001h
клавиша 4 - AL=34h,AH=05h,DX=0001h
команда ROR - AL=53h,AH=40h,DX=0001h
команда SHLD - AL=53h,AH=40h,DX=0014h
После выполнения цикла у Вас в регистре DX=0014h находится упакованое двоично-десятичное число, которое не является двоичным представлением введеного числа. Ниже приведенный код вначале распаковывает ( т.е. переводит его к неупакованному виду) и после этого производится коррекция перед делением. Добавте его в свою программу.
Код:
    mov ax,dx 
shl dx,4
mov ah,dh
and ax,0f0fh
aad
lea bx,Tabl

Удачи!
---------
И только наступив на грабли мы приобретаем драгоценный опыт!
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор)
Украина, Киев
Тел.: +380979536619
Адрес: Украина г.Киев
----
Ответ отправлен: 19.08.2008, 11:54
Оценка за ответ: 5
Комментарий оценки:
Большое СПАСИБО!!! УДАЧИ ВАМ!!!:-)


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

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

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

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

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

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


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


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

∙ Версия системы: 5.1 beta(win) от 11.08.2008

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

В избранное