Wat is het verschil tussen de mediatypen "Constant" en "Constante K"?
FAQ #100123
Het belangrijkste verschil is de verschillende bereik van waarden voor deze twee soorten "Constant" (type "Const" in de symbool-Editor) en "Constante K" (type "K" in de symbool-Editor).
Symbool | minimumwaarde | Max waarde |
Const | -2'147 ' 483'648 | 2'147 ' 483'647 |
K | 0 | 16383 |
Het verschil kan worden verklaard met de structuur van een codeline, die de lengte van 32-bits heeft:
TOEVOEGEN | K | 100 | ; 1. Codeline van instructie |
R | 100 | ; 2. Codeline van instructie | |
R | 101 | ; 3. Codeline van instructie |
Alle informatie van elke codeline worden opgeslagen in 32-bits (4 byte). Aangezien de eerste codeline 18 bits voor instructie moet (bijvoorbeeld toevoegen) en media code (K, R, I,...), zijn er 14 bits links die kan - in het geval dat de media code is K - worden gebruikt voor de waarde van de constante"K". Daarom is het waardebereik van de constante"K" 0..16383.
Een constante"K" wordt gekenmerkt door de code van de media (bits 14 en 15 zijn hoge) en zo kan worden gebruikt in plaats van bijvoorbeeld een register (gezien de instructie wordt ondersteund).
Er rekening mee dat de "K constante" kan alleen worden gebruikt als parameter voor de instructie die een media-code vereist.
Belasting instructies (LD, LDL, LDH) accepteren alleen "Constanten" zonder mediacode voor de tweede codeline. Zie hieronder:
LD | R | 200 | ; Laden van register 200 |
2147483647 | ; met de waarde 2147483647 |
Aangezien op de tweede codeline van de LD-instructie geen mediatype is toegestaan maar alleen een waarde mogelijk is, de hele 32 bit van de codeline kan worden gebruikt als de waarde (-2 '147"483" 648... 2'147 ' 483'647) van deze constante.
Merk op dat de "constante" alleen kan worden gebruikt met Load Mnemonics; verder op het nooit kan niet worden aan een FB als parameter doorgegeven.
Categories
Local FAQ Deutschland / Fupla
Local FAQ Deutschland / SEdit (IL programming)
Local FAQ Deutschland / Symbol Editor
PG5 2.0 / Fupla
PG5 2.0 / SEdit (IL programming)
PG5 2.0 / Symbol Editor
Last update: 15.07.2016 13:32
First release: 11.06.2004 10:37
Views: 12998