![]() |
|
|
![]()
|
|
| Darksquall |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 22.1.2004 Где: Москва Репутация: нет Всего: 4 |
Как отнять 1 от переменной,не используя ни + ни -ни = ни отрицательные числа ,есть только inc,loop и обнуление переменной.
Я так понимаю цикл от 1 до значения переменнной на единицу меньше самой переменной. но учитывая что нет минуса,то .... :-( P.S. Кошмар |
|||
|
||||
| oleg1973 |
|
|||
![]() asm fanat ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3283 Регистрация: 16.7.2003 Где: Italy Репутация: нет Всего: 34 |
ну если есть inc значит есть и dec
dec eax к примеру -------------------- SST 465555 icq 200-512-712 |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
если переменная 16-битная (к примеру), то можно попробовать 65535 раз прибавить 1
а вообще, если бы мне кто-то рассказал, как точно работает loop, можно было бы еще подумать (а то этого ассемблера я не знаю) -------------------- qqq |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
В ecx число, от которого надо отнять 1, а в eax результат
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| Darksquall |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 22.1.2004 Где: Москва Репутация: нет Всего: 4 |
Ребят вы не так поняли :-),это не асм.А задачка,считается что в языке всего 3 команды inc(x) ,zero(x) и loop(x) при чем если в цикле меняется х то количество оборотов цикла не изменится.Во как.Мучаюсь и никак.Есть процедура нахождения разницы
все что в {} это внутренность цикла. function raznica(v1,v2) loop(v2) {dec(v1)} результат сохраняется в v1 но нет самого Dec. :-( |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
v1 - число для декрементации
v2 - результат
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| p0s0l |
|
||||||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: нет Всего: 112 |
В таком случае (на асме) проще было бы так, без цикла:
Правда, если декрементировать 0, то ничего не продекрементируется... ЗЫ: если loop(x) не обнуляет x, то assign будет таким: function assign(v2, v1) { zero(v2); loop(v1) { inc(v2) } } Это сообщение отредактировал(а) p0s0l - 1.4.2004, 20:03 -------------------- С уважением, г-н Посол. |
||||||
|
|||||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
Даааа... Видимо мне очень захотелось inc сделать -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| p0s0l |
|
||||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: нет Всего: 112 |
Не обратил внимания на
Тогда можно проще (с учетом что loop(x) не обнуляет x):
Чем-то даже походит на пост cardinal Что еще можно тут сбацать? Синус поди кто-нить сделает? -------------------- С уважением, г-н Посол. |
||||
|
|||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 1 Всего: 317 |
Было бы инвертирование, тогда запросто:
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| cardinal |
|
||||||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
Да я этого тоже не видел
Да я тебе просто идею хотел подкинуть А так для отмазки loop'ы бывают разные и если бы число в этих менялось, то моя фишка кавадрат бы не высчитывала. Объясняю ход моих мыслей:
Это был ход моих мыслей... -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
||||||
|
|||||||
| Darksquall |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 22.1.2004 Где: Москва Репутация: нет Всего: 4 |
Огромное спасибище :-),смотрю и не понимаю как до меня не дошло. Вообще есть еще одна проблема теперь нужно raznicey и Decom разделить одно число на другое,при наличии if я и сам могу,вот: funccion divs (v1,v2) zero(v4) loop (v1) {raznica(v1,v2) if v1>=0 then inc(v4) } а вот без if чето не получается,там же как,деление это вычитание из делимого делителя n раз, и n и есть то что получилось |
||||
|
|||||
| Arush |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 10.11.2003 Репутация: нет Всего: 1 |
Так какая задача-то стоит?
Может там и деление не требуется ? |
|||
|
||||
| Arush |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 10.11.2003 Репутация: нет Всего: 1 |
И кстати, сколько раз выполнится loop(х) если х отрицательное?
И есть ли вообще отрицательные числа? |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
Попробуй так:
v1 - делимое v2 - делитель v3 - результат
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |