< Wróć do bazy wiedzy

Jaka jest różnica między typami “Constant” i “K Constant”?

Główna różnica polega na innym zakresie wartości dla tych typów.
Różnicę tę można wyjaśnić na poniższym przykładzie kodu programu:

ADD    K 100     ; 1. linia polecenia
       R 100     ; 2. linia polecenia
       R 101     ; 3. linia polecenia

Wszystkie dane dotyczące pojedyncze linii kodu przechowywane są w 32 Bitach (4 bajty). Pierwsza linia kodu wymaga użycia 18 bitów na instrukcję (np. ADD) i typ zmiennej (K, R, I,…). Pozostałe 14 bitów – w przypadku, gdy typem jest K – może być użyte na wartość “K constant”. Dlatego też zakres wartości “K constant” wynosi 0..16383.
“K constant” jest oznaczona kodem typu zmiennej (bity 14 i 15 są w stanie wysokim) i dlatego też może być użyta zamiast np. rejestru w instrukcjach, które go wymagają.
Uwaga: “K Constant” może być użyta jako parametr w instrukcjach, które wymagają podania typu zmiennej.
Niektóre instrukcje akceptują tylko “Constants” w kolejnych liniach instrukcji. Instrukcja LD jest właśnie takim przykładem:

LD     R 200         ; Załaduj rejestr 200
       2147483647    ; wartością 2147483647

Ponieważ druga linia instrukcji LD pozwala na podanie jedynie wartości, to całe 32 bity mogą być wykorzystane na wartość z zakresu (-2 147 483 648 .. 2 147 483 647) tej stałej.
Uwaga: Stała typu “Constant” nigdy nie może być wykorzystana w pierwszej linii instrukcji I nie może być przekazana jako parametr wywołania funkcji FB.

ACF: none

Array ( [post_type] => Array ( [0] => tribe_events ) [post_status] => publish [posts_per_page] => 5 [tax_query] => Array ( [relation] => AND [0] => Array ( [0] => Array ( [relation] => OR [0] => Array ( [taxonomy] => tribe_events_category [field] => id [terms] => Array ( ) ) ) ) ) [post__not_in] => Array ( [0] => 7565 ) [orderby] => Array ( [date] => ASC ) [meta_query] => Array ( [0] => Array ( ) ) )
0.076272010803223 seconds
Nasz serwis wykorzystuje pliki cookies. Korzystając z witryny wyrażasz zgodę na ich zapis lub wykorzystanie. Zgoda na wykorzystanie plików cookies jest jednoznaczna z zapoznaniem się i przyjęciem treści polityki cookies.
Akceptuję