Podepsané overpunch - Signed overpunch
Podepsal overpunch je kód slouží k uložení znamení čísla změnou poslední číslice. Používá se ve znakových datech na sálových počítačích IBM v jazycích, jako jsou COBOL , PL / I a RPG . Jeho účelem je uložit znak, který by jinak použil znaková číslice. Kód je odvozen z kódu Hollerith Punched Card , kde lze do stejného sloupce karty zadat číslici i znaménko. Znaková data, která mohou obsahovat přeplnění, se nazývají zónová desetinná místa .
PACK
Poučení o IBM System / 360 architektura stroje konvertuje znaménko zónové desetinné číslo při přechodu na balené desetinné čárky a odpovídající UNPK
instrukce nastaví správný overpunched znamení jeho zónové desetinné výstupu.
Jazyková podpora
PL / I.
PL / I používá tento PICTURE
atribut k deklarování zónovaných desetinných dat s podepsaným přesahem. Každý znak v číselném obrázku kromě V
, který označuje pozici předpokládané desetinné čárky, představuje číslici. Obrázek charakter T
, I
nebo R
označuje číslice postoj, který může obsahovat overpunch. T
označuje, že pozice bude obsahovat {–I, pokud je kladná, a} –R, pokud je záporná. I
označuje, že pozice bude obsahovat {–I, pokud je kladná, a 0-9, pokud je záporná. R
označuje, že pozice bude obsahovat 0–9, pokud je kladná, a} –R, pokud je záporná.
Například PICTURE 'Z99R'
popisuje čtyřmístné číselné pole. První pozice může být prázdná nebo bude obsahovat číslici 0–9. Další dvě pozice budou obsahovat číslice a čtvrtá pozice bude obsahovat 0–9 pro kladné číslo a} –R pro záporné.
Přiřazením hodnoty 1021 výše uvedenému obrázku uložíte znaky „1021“ do paměti; přiřazení -1021 uloží „102J“.
Kódy
Kód | Číslice | Podepsat |
---|---|---|
} | 0 | - |
J | 1 | - |
K. | 2 | - |
L | 3 | - |
M | 4 | - |
N | 5 | - |
Ó | 6 | - |
P | 7 | - |
Q | 8 | - |
R | 9 | - |
{ | 0 | + |
A | 1 | + |
B | 2 | + |
C | 3 | + |
D | 4 | + |
E | 5 | + |
F | 6 | + |
G | 7 | + |
H | 8 | + |
Já | 9 | + |
Příklady
10} je -100
45A je 451
Desetinná místa jsou obvykle implicitní a nejsou výslovně uvedena v textu. Použití čísel se dvěma desetinnými místy:
1000} je -100,00
ASCII reprezentace
COBOL reprezentace podepsaných znaků overpunch „není v ASCII standardizována a různé překladače používají různé kódy overpunch.“ Ve většině případů „zobrazení není stejné jako výsledek převodu pole podepsaného EBCDIC na ASCII s překladovou tabulkou.“ Překladače PL / I v systémech ASCII používají k reprezentaci přeplnění stejnou sadu znaků jako v EBCDIC.