![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Регистрация: 30.06.2008
Сообщений: 5
|
![]()
не нашел тему, но раз здесь обсуждают самык начала то у меня такой вопрос, народ помогите разобраться, никак просто понять не могу, почему например в одном случае используется регистр AX, а в другом данные записываются уже в AL, то есть возникает закономерный вопрос почему используется именно этот регистр в одном случае, а в другом только младший байт
// Если не нашли тему, значит создавайте свою, незачем задавать вопрос в первой попавшейся. Последний раз редактировалось B_N; 30.06.2008 в 13:24. |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
![]()
Уточните, о чём именно речь. Ассемблер предоставляет достаточно свободы в использовании регистров. Можно просто "захотеть" написать так, а не иначе без особых причин, или верхняя "половинка" может использоваться позднее, или могут приниматься в расчёт факторы быстродействия - с регистрами размером в слово процессор справляется быстрее.
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 30.06.2008
Сообщений: 5
|
![]()
извините, я искал тему типа начала программирования или что то в этом духе, но меня выкинуло сюда, по вопросу конкретно, я только начал читать ассемблер, в книге вроде написано что как и когда, но некоторые моменты не раскрываются, а именно примерно разъясните если можно вот такие моменты, AX - регистр через который в основном происходит копирование данных, короче аккумулятор, это я понял, но почему в некоторых примерах указывается AX а в некоторых AL и прсто скажите если допустим я данные, которые в примере помещают в младшую половину я помещю полностью в AX ничего страшного не случится?
|
![]() |
![]() |
![]() |
#4 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]()
размер AL - 1 байт, AX - 2 байта. если данные размеров 1 байт то используется AL, если 2 байта, то используется AX.
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
полностью согласен с B_N и rpy3uH.
ну и я вставлю свои "пять копеек": есть двух байтовых регистр (его ещё называют аккумулятор), к его содержимому можно обратиться через имя AX. А можно обратиться к старшему байту этого же регистра через имя AH или к младшему байту — через имя AL |
![]() |
![]() |
![]() |
#6 |
Регистрация: 30.06.2008
Сообщений: 5
|
![]()
спасибо!!! тогда не могли бы вы разъяснить начинающему вот такой вопрос, а зачем тогда париться, высчитывать сколько байт займут те или иные данные, тогда ведь проще просто работать всегда через регистр ЕАХ допустим и не париться.
|
![]() |
![]() |
![]() |
#7 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]()
глупый вопрос! если хочешь, то работай с EAX, кто тебе запрещает? почитай немного, напиши несколько программ и вопросы отпадут сами по себе.
|
![]() |
![]() |
![]() |
#8 |
Регистрация: 30.06.2008
Сообщений: 5
|
![]()
хорошо, я постараюсь последовать Вашему совету, но в некоторых случаях все же хотелось бы проконсультироваться
|
![]() |
![]() |
![]() |
#9 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
![]()
А кто же против!
![]() |
![]() |
![]() |
![]() |
#10 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Например: Код:
Ну и иногда ради оптимизации еще частями регистров пользуются...
I'm learning to live...
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите, где ошибка в использовании ControlSource... | Tooree | Microsoft Office Access | 2 | 18.08.2008 20:46 |
Виснет приложение при использовании winsock | TR1PL3X | Работа с сетью в Delphi | 1 | 31.03.2008 09:14 |