Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Nemohu přijít na to, jak to udělat. Můžete prosím vysvětlit.
Mějme dva 16-ti bitové (číslování bitů předpokládáme zleva počínaje bitem č.1) registry X a Y s libovolným obsahem a dvě 16-ti bitové konstanty M a N
(jejich obsah je zadán v šestnáctkové soustavě). Výsledkem provedení následujících logických instrukcí je:
OR M, Y
AND M, Y
XOR N, Y
M = AAAA, N = 5555
Vyberte jednu z nabízených možností:
a. nastavení první poloviny registru Y na hodnotu 0, druhé poloviny na hodnotu 1
b. nastavení sudých bitů registru Y na hodnotu 1, ostatní bity budou znegovány
c. nastavení všech bitů registru Y na hodnotu 1
d. vynulování všech bitů registru Y
Jak jsem pochopil, mám převest M,N do bitů.
N = 5555 bude 0101 0101 0101 0101
M = AAAA bude 1010 1010 1010 1010
dělám spravně? nechápu co s tím dál
Offline
No, bitové operace nad registry (čísly) fungují tak, že se dělají mezi odpovídajícími si bity.
Takže to tvé
OR M, Y
AND M, Y
XOR N, Y
si určíš pro bit 0, pak pro bit 1 atd. Jednotlivé bity se navzájem neovlivňují.
Offline