Поиск:

Ответ в темуСоздание новой темы Создание опроса
> порядок байтов в директиве dw 
:(
    Опции темы
markiss
Дата 8.10.2006, 02:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 8.10.2006

Репутация: нет
Всего: нет



Привет. 

Вот код программы :
Код

perviy segment
org 100h

begin:

mov ah, 9h
mov dx, offset hey
int 21h

mov dx, offset hey1
int 21h

int 20h

hey dw 'as'
hey1 db '$'

perviy ends
end begin


В результате на экране появляется не слово as, а слово sa. Почему так, и зачем так сделано?
Сорри, если вопрос глупый. smile 
PM MAIL   Вверх
Kuvaldis
Дата 8.10.2006, 02:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


механик-вредитель
***


Профиль
Группа: Участник Клуба
Сообщений: 1189
Регистрация: 16.6.2006
Где: Минск

Репутация: нет
Всего: 61



markiss, 
Код

 "Перевернутое" представление  используется и при хранении в памяти
целых чисел размером в двойное слово:  в первом его байте  размещаются
младшие 8 битов числа, во втором байте - предыдущие 8 битов и т.д. На-
пример, число 12345678h хранится в памяти так:
               ---------------------
               | 78 | 56 | 34 | 12 |
               ---------------------
Другими словами,  в первом слове  двойного слова  размещаются  младшие
(правые) 16 битов числа, а во втором слове - старшие 16 битов,  причем
в каждом из этих двух слов  в свою очередь используется "перевернутое"
представление.
    Такое необычное представление чисел объясняется тем,  что в первых
моделях ПК  за раз можно было считать из памяти только один байт и что
все арифметические операции  над  многозначными числами  начинаются  с
действий над младшими цифрами, поэтому из памяти в первую очередь надо
считывать младшие цифры, если сразу нельзя считать все цифры. Учитывая
это,  в первых ПК и стали размещать младшие цифры числа перед старшими
цифрамми, а ради преемственности такое представление чисел сохранили в
последующих моделях ПК.
    Конечно,  "перевернутое" представление неудобно для людей,  однако
при использовании  языка ассемблера  это неудобство не чувствуется:  в
MASM все числа записываются в нормальном, неперевернутом виде (см. ни-
же).



--------------------
Помни - когда ты спишь, враг не дремлет
Спи чаще и дольше, изматывай врага бессоницей
PM MAIL ICQ   Вверх
markiss
Дата 8.10.2006, 02:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 8.10.2006

Репутация: нет
Всего: нет



спасибо!
PM MAIL   Вверх
MAKCim
Дата 8.10.2006, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 1
Всего: 207



markiss
В разных архитектурах сделано по-разному
в Intel-овской архитектуре младший байт находится по младшему адресу
соответственно


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0592 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.