Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler
Регистрация

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

Ответ
 
Опции темы
Старый 06.09.2017, 19:49   #1
йцукйцук
Новичок
 
Регистрация: 20.04.2017
Сообщений: 2
Репутация: 10
По умолчанию Команда sub

Здравствуйте, возникли проблемы с командой sub, до этой команды все работает, а вот именно sub - нет, подскажите пожалуйста в чем может быть проблема
mov rbp,rsp
mov rax, const1
mul a1
div const2


mov rax, const2
mul e1
mov r10, rax
mov rax, c1
div r10
sub rax, r10
йцукйцук вне форума   Ответить с цитированием
Старый 06.09.2017, 20:34   #2
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 994
Репутация: 733
По умолчанию

поставь перед 'DIV'-ами инструкцию 'XOR RDX,RDX'
скорей-всего ошибка деления возникает у тебя
__________________
Нашедшего выход - затаптывают первым..
R71MT вне форума   Ответить с цитированием
Старый 06.09.2017, 20:51   #3
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,299
Репутация: 1333
По умолчанию

Делите не правильно.И умножение посмотрите.

Безымянный.gif



Ирвин К. Язык ассемблера для процессоров Intel 2005
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума   Ответить с цитированием
Старый 06.09.2017, 21:03   #4
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 303
Репутация: 59
По умолчанию

О, пацаны, блин, только щас увидел регистры R8B-R15B, хотя не первый день в радиоэлектронике. А что это за регистры-то такие, не сочтите за труд объяснить.
Cuprum5 вне форума   Ответить с цитированием
Старый 06.09.2017, 21:23   #5
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,299
Репутация: 1333
По умолчанию

Cuprum5
Цитата:
Сообщение от Cuprum5 Посмотреть сообщение
увидел регистры R8B-R15B
Таких нету. У вас видимо телефон и там плохо видны изображения. На самом деле там написано r/m8, r/m16, r/m32 - что означает обращение к памяти размеру 8 бит, 16 бит, 32 бита или любой регистр общего назначения соответствующего размера.
R0-R15 это регистры общего назначения в x86-64.
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 06.09.2017 в 21:27.
Pavia вне форума   Ответить с цитированием
Старый 11.09.2017, 12:21   #6
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 303
Репутация: 59
По умолчанию

Да и регистры R8-R15 есть, по-мооему - новая архитектура x64!
Cuprum5 вне форума   Ответить с цитированием
Старый 11.09.2017, 19:02   #7
7in
Евгений (Jin X)
Форумчанин
 
Аватар для 7in
 
Регистрация: 14.12.2014
Адрес: Самара
Сообщений: 237
Репутация: 147
По умолчанию

R8B-R15B есть, это младшие байты 64-битных регистров R8-R15. Они появились в 64-битной архитектуре x86-64 (Intel 64 / AMD 64).
https://ru.wikipedia.org/wiki/Регистр_процессора
И картинка в частности: https://ru.wikipedia.org/wiki/Регист...isters_svg.svg

p.s. Для обнуления RDX и пр. достаточно обнулить младшие 32 бита, старшие биты обнулятся автоматом, т.е. XOR EDX,EDX. Замечу, что при изменении слова или байта (XOR DX,DX или XOR DL,DL ; XOR DH,DH) с остальной частью регистра ничего не происходит.
Короче говоря, при доступе (на запись) к младшим 32 битам (именно к 32) старшие обнуляются. Даже INC EAX обнулит старшие 32 бита RAX.
__________________
Делаю лабы на Asm: asmlabs.ru
Tell me would you kill to save a life? Tell me would you kill to prove you're right?
Crash, crash, burn, let it all burn, this hurricane's chasing us all underground...

Последний раз редактировалось 7in; 11.09.2017 в 19:04.
7in вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Команда разработчиков Rost1slav Свободное общение 14 23.02.2015 19:08
Команда DIV Mr.Steroid Assembler 2 22.02.2012 13:23
команда cd Simbad JavaScript, Ajax 2 12.08.2011 14:05
Команда System: запуск программы в свёрнутом режиме, Не работает команда /min Me777 Общие вопросы C/C++ 0 12.07.2011 11:49




04:19.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru