Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Деление двоичных чисел (https://forum.antichat.xyz/showthread.php?t=26494)

Дикс 03.11.2006 21:40

Деление двоичных чисел
 
не нашел ветки, более подходящей для вопроса.

Долго ломал голову, но так и не догнал.
Нужно поделить 11110 на 110

В мануале такой пример
http://img441.imageshack.us/img441/8/0101010101lt9.gif

от 11110 отнимают 110
и дальше почему-то идёт опять 110 (это же не ответ, 30-6=24)
затем ноль не пишут (тогда из каких соображений его вообще взяли?)
и потом опять 110

вобщем два вопроса: почему в третьей строке вместо ответа стоит 110
и из каких соображений вообще брали ноль (в числе 101)

надеюсь кто-нить поможет

Ch3ck 03.11.2006 22:14

Когда-то в своё время экзамен по ассемблеру сдавал(фу бяка какая, фу) пользовался вот этим:
_http://www.dstu.edu.ru/informatics/mtdss/part1.html
(ну не совсем этим, но похоже. А вообще лекциями в основном)
Чё-т похожее...
_http://forum.ixbt.com/topic.cgi?id=26:35304

nc.STRIEM 03.11.2006 22:55

перевели в десятичную систему, раздели а потом опять в двоичную! всегото...

а ошибка в том что 11110-110=11000 а не 110! при вычитание выравнивать надо по правому краю!)) в переди можно дописоват скок угодно нулей
вот:
11110
00110
11000

Дикс 04.11.2006 16:41

аа, они меня пытаются наипать, я и в другом примере подобное замечал, пока сам не решил, не мог понять как у них получилось
спасиб, попробую

хотелось бы уточнить потому что в статье не написано прямым текстом:
1-1 = 0
1-0 = 1
0-1 = 0
0-0 = 1
правильно?

Talisman 04.11.2006 16:46

Цитата:

Сообщение от Дикс
аа, они меня пытаются наипать, я и в другом примере подобное замечал, пока сам не решил, не мог понять как у них получилось
спасиб, попробую

хотелось бы уточнить потому что в статье не написано прямым текстом:
1-1 = 0
1-0 = 1
0-1 = 1
0-0 = 1
правильно?

0-0=0 ИМХО

Дикс 04.11.2006 16:48

а, мля
вот
1-1 = 0
1-0 = 1
0-1 = 1
0-0 = 0
самый правильный вариант, пасиба

2Dr.Check
пасиб за ссылки

nc.STRIEM 04.11.2006 23:37

и когда 0-1 = 1 еще 1 заниаеться у впереди стоящего разряда))
например:
100
010
010

Дикс 05.11.2006 01:31

1011011101001 / 1110011
-1110011000000 | 110011
-----------------------
1001000101000
- 1110011000000
-----------------------
1110001001
- 1110011
-----------------------
1111010

вопрос такой: когда я составляю ответ (последняя строчка), надо ли в него вписывать те две единицы, что я выделил жирным?
и ещё как мне вообще узнать когда в ответ вписывать нули, чтобы сместить число?
или специально подставляют нужное кол-во нулей, чтобы двигать число вправо и отсекать те цифры, что остаются слева? (выделены жирным)

nc.STRIEM 05.11.2006 16:39

Дикс! Чтобы легче было из числа вычитать число, есле в дном числе меньше цифр чем в другом, то добовляй нули впереди! тоесть: есле ты хочеш сделать 1110001001-1110011
то запиши это как 1110001001-0000111001 далее:
1110001001
0000111001
1101010000
и все)) когда мы делаем 0-1 то занимаем 1 у впереди стоящаего разряда и ответ будет 1! короче при вычитание (есле делаеться 0-1) можно то число ( в данном случае 1110001001) записать так 1101121001 и потом проводить вычитание!

Micr0b 05.11.2006 17:28

имхо ничего новоги неузнал чесно.. но даже незнаю или бужет полезн ето новичкам.))
лутше сразу книгу купить и все.))) но всеравно за старания как всегда +


Время: 10:18