[Systemy liczbowe] Zapis liczby w systemie U2.

qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

Witam,
mam pytanie dotyczące zadania, którego treść brzmi: "Zapisz liczbę -13 w systemie U2".
Zrobiłem to w ten sposób:
\(\displaystyle{ |-13| = 13}\)

\(\displaystyle{ 13 = 1101}\)

\(\displaystyle{ 001101 NOT 110010}\)

\(\displaystyle{ 110010 + 1 = 110011}\)

\(\displaystyle{ -13 = 110011}\)
Czy ktoś mógłby mi wytłumaczyć, dlaczego otrzymany wynik jest nieprawidłowy? (bo tak uważa mój nauczyciel, który powiedział, że prawidłowy wynik to 10011)
mateuszl95
Użytkownik
Użytkownik
Posty: 97
Rejestracja: 14 paź 2009, o 20:11
Płeć: Mężczyzna
Lokalizacja: Kruszwica
Podziękował: 17 razy
Pomógł: 8 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: mateuszl95 »

\(\displaystyle{ -13 = -32 \cdot 1 + 16 \cdot 1 + 8 \cdot 0 + 4 \cdot 0 + 2 \cdot 1 + 1 \cdot 1\\
-13(10) = 110011(U2)}\)


\(\displaystyle{ 10011(U2) = -16 \cdot 1 + 8 \cdot 0 + 4 \cdot 0 + 2 \cdot 1 + 1 \cdot 1 = -13}\)

Wniosek: oba wyniki są poprawne. Jednak warto zauważyć że do zapisu liczby \(\displaystyle{ -13}\) wystarczy \(\displaystyle{ 5}\) bitów.
W nawiasie podałem system liczbowy. Np. \(\displaystyle{ -13(10)}\) oznacza "-13 w systemie dziesiętnym"
Ostatnio zmieniony 29 paź 2016, o 09:17 przez Afish, łącznie zmieniany 1 raz.
Powód: Całe wyrażenia matematyczne umieszczaj w tagach [latex] [/latex].
qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

A czy przypadkiem w U2 nie powinniśmy uzupełniać do parzystej liczby bitów? Przynajmniej tak mnie uczyli. Skoro oba wyniki są dobre, to pytanie, dlaczego nie zaliczył mi tego zadania?
kalwi
Użytkownik
Użytkownik
Posty: 1931
Rejestracja: 29 maja 2009, o 11:58
Płeć: Mężczyzna
Lokalizacja: Warszawa
Podziękował: 145 razy
Pomógł: 320 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: kalwi »

Liczba \(\displaystyle{ 13}\) w U2 zapisana zostanie na 5 bitach.

Czyli \(\displaystyle{ 13=01101}\)

Inwersja

\(\displaystyle{ 10010}\)

Dodajemy \(\displaystyle{ 1}\)

\(\displaystyle{ 10011}\)

Z kolei Twój wynik jest równy: \(\displaystyle{ 110011_{U2}=-32+16+2+1=-13}\)

Także oba wyniki są ok. Tylko niepotrzebnie dałeś 6 bitów.
Przynajmniej tak mnie uczyli
Źle Cię uczyli.
qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

Czyli wynik w 6 bitach nie powinien być traktowany jako błąd?
kalwi
Użytkownik
Użytkownik
Posty: 1931
Rejestracja: 29 maja 2009, o 11:58
Płeć: Mężczyzna
Lokalizacja: Warszawa
Podziękował: 145 razy
Pomógł: 320 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: kalwi »

Pytanie czy zajęcie ekstra bitu gdy nie ma takiej potrzeby nauczyciel traktuje jako błąd. Jeśli tak - to tak. Natomiast wartość sama w sobie jest taka sama w obu przypadkach.
qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

Wracając jeszcze do tej parzystej liczby bitów. W podręczniku jest opisany proces przekształcania ujemnej liczby dziesiętnej na postać binarną w systemie U2, który pozwolę sobie zacytować:
"1. Na początku obliczamy postać binarną z wartości bezwzględnej dziesiętnej liczby
ujemnej:
2. Powstałą liczbę binarną należy uzupełnić zerami do liczby cyfr będącej krotnością
dwójki. Gdy liczba binarna ma trzy cyfry, dopełniamy do czterech.
Jeżeli byłoby siedem cyfr, należałoby uzupełnić do ośmiu itd.

3. Następnie należy zamienić wszystkie cyfry w liczbie binarnej na przeciwne, czyli
jedynki na zera i odwrotnie:
4. W ostatnim etapie do powstałej liczby dodajemy binarną jedynkę, a wynik jest
ujemną liczbą binarną"
Liczba, która jest "krotnością dwójki" to liczba parzysta, więc automatycznie zapis w U2 będzie miał parzystą liczbę bitów, zatem mógłbyś mi objaśnić, dlaczego powinno jednak być 5 bitów?
kalwi
Użytkownik
Użytkownik
Posty: 1931
Rejestracja: 29 maja 2009, o 11:58
Płeć: Mężczyzna
Lokalizacja: Warszawa
Podziękował: 145 razy
Pomógł: 320 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: kalwi »

zatem mógłbyś mi objaśnić, dlaczego powinno jednak być 5 bitów?
Bo nie ma powodu, aby to było na 6 bitach, skoro może być na 5.
qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

No tak, ale przecież piątka nie jest krotnością dwójki.
kalwi
Użytkownik
Użytkownik
Posty: 1931
Rejestracja: 29 maja 2009, o 11:58
Płeć: Mężczyzna
Lokalizacja: Warszawa
Podziękował: 145 razy
Pomógł: 320 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: kalwi »

Parzysta ilość bitów nie ma tu nic do rzeczy, nie wiem skąd oni taki pomysł wzięli. W życiu z czymś takim nie spotkałem.

Kod: Zaznacz cały

Do zapisu liczb ujemnych – użycie kodu U2

• Binarna liczba dodatnia jest zapisywana na wystarczającej liczbie pozycji i uzupełniana zerami na pozycjach bardziej znaczących: (3) 10 = (011) 2 = (0011) 2

• Binarna liczba ujemna jest zapisywana:
• w uzupełnieniu do 2 i  poprzedzona 1 na pozycji najstarszej i uzupełniona jedynkami na pozycjach bardziej znaczących: (-3) 10 = (101) 2 = (1101) 2

• Notacja uzupełnieniowa liczb binarnych pozwala na dodawanie liczb dodatnich i ujemnych (realizowane standardowo jak dla liczb binarnych).
Obawiam się, że po prostu to pisał ktoś nierozumiejący tematyki (tudzież tłumacz taki był).
qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

No to teraz już się zakręciłem Korzystam z książki " Kwalifikacja E12. Montaż i eksploatacja komputerów osobistych oraz urządzeń peryferyjnych".
kalwi
Użytkownik
Użytkownik
Posty: 1931
Rejestracja: 29 maja 2009, o 11:58
Płeć: Mężczyzna
Lokalizacja: Warszawa
Podziękował: 145 razy
Pomógł: 320 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: kalwi »

I naprawdę myślisz, że ktoś będący "technikiem informatykiem" ma styczność z kodowaniem liczb w u2?
Owszem, można stosować zapis parzystocyfrowy - jeśli są ku temu jakieś powody (np. na wejściu układ przyjmuje liczby 16-bitowe). Ale jeśli nie ma - to tworzysz najprostszą wersję (tj. zajmującą jak najmniej miejsca w pamięci).
qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

Jeśli chodzi o wybór książki, to była to decyzja nauczyciela, a nie moja, który zresztą tak samo tłumaczył później na lekcji. Czytałem kilka opracowań w internecie i też nie było tam mowy o konieczności zapisu liczby w parzystej ilości bitów. Reasumując, nie powininienem się raczej kierować tym zapisem z książki?
kalwi
Użytkownik
Użytkownik
Posty: 1931
Rejestracja: 29 maja 2009, o 11:58
Płeć: Mężczyzna
Lokalizacja: Warszawa
Podziękował: 145 razy
Pomógł: 320 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: kalwi »

Dokładnie, nie powinieneś.
qwerty355
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 24 maja 2015, o 13:21
Płeć: Mężczyzna
Podziękował: 16 razy

[Systemy liczbowe] Zapis liczby w systemie U2.

Post autor: qwerty355 »

Ok, dzięki za pomoc
ODPOWIEDZ