|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.10.2012, 18:59 | #1 |
Форумчанин
Регистрация: 05.12.2009
Сообщений: 253
|
Деление
Добрых суток.
Разбираюсь в асамблере, так сложилось что времени небыло что либо почитать, а лабу надо сдать. Вообщем скинули мне код (примерно как у меня задание) сложного в принципе ниче не увидел (там не чистый асм а вставка в плюсах) но есть одна проблема код выдает неверный результат, где именно идет ошибка нашел но почему она там появляется не могу понять. Код:
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол
|
18.10.2012, 19:19 | #2 |
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
div с 32-битным операндом делит 64-битное число в edx:eax на операнд, поэтому надо сначала обнулить edx.
И раз число со знаком, тогда вообще надо заполнить edx знаком делимого и использовать idiv: Код:
Последний раз редактировалось Somebody; 18.10.2012 в 19:22. |
18.10.2012, 19:43 | #3 |
Форумчанин
Регистрация: 05.12.2009
Сообщений: 253
|
Спасибо. Если не сложно то посмотрите в коменте я правильно понял работу команды
Код:
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Деление | 0479 | Общие вопросы по Java, Java SE, Kotlin | 1 | 08.11.2010 00:37 |
Деление в C++ | Bumbuk | Помощь студентам | 5 | 24.06.2010 02:06 |
Деление в С++ | Tanilita | Общие вопросы C/C++ | 5 | 26.02.2010 17:28 |
Деление | |{ot | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 24.03.2009 01:50 |
деление | natasha | Общие вопросы Delphi | 6 | 22.01.2007 12:39 |