![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 12.06.2012
Сообщений: 4
|
![]()
Доброго времени суток!
В процессе написания программы на ассемблере для микроконтроллера MCS-51 возникла необходимость делить беззнаковое двухбайтовое число на 20d. Попытки что либо найти в интернете провалились. Пригодится любая помощь, будь то ассемблерный код или просто алгоритм. |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
у тебя трудности с делением или не знаешь как делить два байта на один?
|
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 12.06.2012
Сообщений: 4
|
![]()
Для деления байта на байт в ассемблере MCS-51 есть команда DIV.
Проблема именно в том как использовать эту команду для деления двух байтов на один. |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
хз чо у вас там с MCS-51, но в станадартно тасме под интел и амд див делит два байта на один, 4 байта на два, только так.
вот под интел: Код:
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
хз чо у вас там с MCS-51, но в станадартно тасме под интел и амд див делит два байта на один, 4 байта на два, только так.
вот под интел: Код:
|
![]() |
![]() |
![]() |
#6 |
Новичок
Джуниор
Регистрация: 12.06.2012
Сообщений: 4
|
![]()
Этот алгоритм сразу пришел мне в голову, но здесь возникает проблема в случае если старшая часть делимого меньше делителя.
Деление аккумулятора А на регистр B: DIV AB При выполнении операции деления целое от деления записывается в аккумулятор А, остаток от деления в регистр В. Последний раз редактировалось Shatodor; 12.06.2012 в 17:35. |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
да, точно, не подумал
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
а два байта на два байта делить можно на этом камне?
|
![]() |
![]() |
![]() |
#9 |
Новичок
Джуниор
Регистрация: 12.06.2012
Сообщений: 4
|
![]()
Нет, у него арифметика однобайтовая.
|
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 58
|
![]()
хз как быть...
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Деление числа без остатка | grom333 | Общие вопросы Delphi | 6 | 18.01.2012 22:28 |
Длинная арифметика : деление (числа в string'е на число 256) | Dima_Dima | Общие вопросы Delphi | 6 | 06.02.2011 20:39 |
Деление числа в ассемблере | Настя22 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 9 | 23.01.2011 13:12 |
Деление длинных чисел на длинные числа | Dr. Feelgood | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 3 | 05.06.2010 12:05 |
Деление числа на 20 с помощью сдвигов... | maLoy*508 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 01.04.2008 02:36 |