Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.12.2011, 01:22   #11
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

вы можете сразу делать mov ecx,[i]
у вас же sizeof(dw)==sizeof(ecx)==4 байта.
а в вашем случае лучше стек применить.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 31.12.2011, 01:52   #12
Ulex
Непрофессионал
Участник клуба
 
Аватар для Ulex
 
Регистрация: 01.01.2008
Сообщений: 1,405
По умолчанию

Цитата:
у вас же sizeof(dw)==sizeof(ecx)==4 байта.
sizeof(dw)==16 бит.
Вопрос в том, чего их было объявлять как dw?

Цитата:
loop, грубо говоря, заложен в архитектуру самого процессора. Поэтому выполняется ОЧЕНЬ быстро..
смотря какого процессора.

Цитата:
LOOP is faster and smaller on 8088-286. on 386 DEC/JNZ is much faster.
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------
Страничка с моими программками http://ulex-masm.ru
Ulex вне форума Ответить с цитированием
Старый 31.12.2011, 02:39   #13
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

да перепутал, после С++, с DWORD типом.

Цитата:
Я весь день ищу и никак не найду аналог инструкции movxz, чтобы заменить две эти строчики
а зачем искать аналог?
чем movzx не подходит?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 31.12.2011, 16:01   #14
_PROGRAMM_
Участник клуба
 
Аватар для _PROGRAMM_
 
Регистрация: 30.07.2009
Сообщений: 1,601
По умолчанию

Цитата:
чем movzx не подходит?
Не работает. Регистр у меня 32 бит, а переменная 16. Ошибку размеров выдает.
Цитата:
а в вашем случае лучше стек применить.
Так стек только 2 байта запоминает.
Цитата:
Вопрос в том, чего их было объявлять как dw?
Для небольшого экономия памяти. А как вы предлагаете? Как dd объявить?

В мире нет вечных двигателей, зато есть вечные тормоза...

Блог
_PROGRAMM_ вне форума Ответить с цитированием
Старый 31.12.2011, 16:32   #15
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Цитата:
Сообщение от _PROGRAMM_ Посмотреть сообщение
Не работает. Регистр у меня 32 бит, а переменная 16. Ошибку размеров выдает.
Должен работать. Может, написал что не то?
Цитата:
Сообщение от _PROGRAMM_ Посмотреть сообщение
Так стек только 2 байта запоминает.
???
Цитата:
Сообщение от _PROGRAMM_ Посмотреть сообщение
Для небольшого экономия памяти. А как вы предлагаете? Как dd объявить?
Забей на экономию памяти, это два байта. Тем более на префиксах инструкций для использования 16-битных операндов в 32-битном коде больше потеряешь. А экономия на размере exe файла имеет смысл только тогда, когда является конечной целью.
Кстати, счётчики циклов можно хранить в esi, edi, ebx, тогда и сохранением и восстановлением заниматься не надо.

Последний раз редактировалось Somebody; 31.12.2011 в 16:35.
Somebody вне форума Ответить с цитированием
Старый 31.12.2011, 18:05   #16
_PROGRAMM_
Участник клуба
 
Аватар для _PROGRAMM_
 
Регистрация: 30.07.2009
Сообщений: 1,601
По умолчанию

Цитата:
Забей на экономию памяти, это два байта.
Ну это для спортивного интереса.
Цитата:
???
Согласен, глупость.

В мире нет вечных двигателей, зато есть вечные тормоза...

Блог
_PROGRAMM_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переменные Карен Помощь студентам 1 01.06.2011 17:16
синусы и ко. циклы, вроде циклы Scorch92 Паскаль, Turbo Pascal, PascalABC.NET 2 22.12.2010 19:26
Переменные экземпляра,класса, константы и переменные cop08 Общие вопросы .NET 3 20.12.2010 21:56
Циклы - вложенны циклы? tigga Microsoft Office Excel 5 19.02.2010 23:36