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

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


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

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

Выпуск № 849
от 11.09.2007, 22:35

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


Вопрос № 101118: Имеется адрес 0001:0003 смещение 0003 указывает на конкретный байт, адрес 0001 - это 16 разрядный адрес потому что в HEX один знак 4 бинарных тобишь 0 - 4 0 - 4 0 - 4 1 - 4. 4 по 4 значит 16 бит, или 4 в хексе. Правильно я рассуждаю?...

Вопрос № 101.118
Имеется адрес 0001:0003 смещение 0003 указывает на конкретный байт, адрес 0001 - это 16 разрядный адрес потому что в HEX один знак 4 бинарных тобишь 0 - 4 0 - 4 0 - 4 1 - 4. 4 по 4 значит 16 бит, или 4 в хексе. Правильно я рассуждаю?
Отправлен: 06.09.2007, 22:13
Вопрос задал: Artyom Zaitsev (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Лысков Игорь Витальевич
Здравствуйте, Artyom Zaitsev!
Неправильно.
Адрес 0001:0003 означает несколько другое.
Адреса в реальном режиме процессора 20-битные, а регистры 16-битные.
Чтобы сформировать 20-битный адрес и придумали этот "хитрый" способ.
Значение сегмента (0001h в нашем случае) необходимо умножить на 10h (или,
что то же самое - добавить справа шестнадцатиричный 0)
и полученную величину сложить со смещением.
Т.е. 0001h * 10h + 0003h = 00013h
Надо заметить, что один и тот же 20-битный адрес может быть представлен
разными наборами сегмент:смещение
Например: 0123h:0011h = 0124h:0001h = 01241h
И еще: сегмент определяет(когда умножим на 10h) 20-битный адрес начала
64к памяти (только 64к могут адресоваться 16-битным адресом).
А смещение - адрес, начиная с начала сегмента.
---------
Удачи!
Ответ отправил: Лысков Игорь Витальевич (статус: Практикант)
Ответ отправлен: 07.09.2007, 10:08


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

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

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

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

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


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


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

В избранное