Install Ebcdic Overpunch Decoding
Pick your agent. Every command is ready to paste.
npx skills add benchflow-ai/skillsbench --skill ebcdic-overpunch-decodingThe open skills CLI detects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.
01
Install it
Run the command above, or upload the folder in Claude.
02
Ask naturally
Describe the task. Your agent loads ebcdic-overpunch-decoding when the request matches its description.
03
Name it if needed
If it does not trigger, say “use the ebcdic-overpunch-decoding skill”. In Codex, type $ebcdic-overpunch-decoding.
EBCDIC overpunch (zoned decimal sign)
On classic mainframe tapes, signed numeric amounts are stored as N-1 digits followed by a single byte where the high-order bits carry the sign and the low-order bits carry the final decimal digit. When the file is converted to ASCII / printable form, the last byte is rendered as a letter (or a brace).
Sign and digit table
| Char | Sign | Last digit | Char | Sign | Last digit | |
|---|---|---|---|---|---|---|
{ |
+ | 0 | } |
− | 0 | |
A |
+ | 1 | J |
− | 1 | |
B |
+ | 2 | K |
− | 2 | |
C |
+ | 3 | L |
− | 3 | |
D |
+ | 4 | M |
− | 4 | |
E |
+ | 5 | N |
− | 5 | |
F |
+ | 6 | O |
− | 6 | |
G |
+ | 7 | P |
− | 7 | |
H |
+ | 8 | Q |
− | 8 | |
I |
+ | 9 | R |
− | 9 |
Positive zero is {; negative zero is }. Both decode to magnitude 0 — keep
the sign attached so downstream arithmetic doesn't drop a debit's polarity.
A common defect
The positive half of the table ({, A–I) is the visible-looking case and
is often handled first. The negative half (}, J–R) looks like ordinary
letters and is easy to forget. If only the positive letters are decoded,
debits and credits both come through as positive — the totals look plausible
but signs are wrong on every negative row.
Decoding pattern (placeholder names)
Split the field into the leading digits and the overpunch byte, look up the sign + units digit from the table above, recombine, then build the signed working-storage value. The shape below uses generic identifiers — substitute your own field names:
*> placeholders: digits-buf holds the recombined unsigned digits,
*> op-char is the overpunch byte, sgn / lo-digit are scratch.
split raw-amount into (leading-digits, op-char)
EVALUATE op-char
WHEN "{" sgn := "+" lo-digit := 0 *> positive zero
WHEN "A" THRU "I" sgn := "+" lo-digit := 1..9
WHEN "}" sgn := "-" lo-digit := 0 *> negative zero
WHEN "J" THRU "R" sgn := "-" lo-digit := 1..9
END-EVALUATE
digits-buf := leading-digits with lo-digit appended
signed-value := (sgn = "-") ? -digits-buf : +digits-buf
The decisive point is that the EVALUATE must cover both halves of the
table — the negative letters } and J–R as well as the positive
{/A–I. The exact PIC clauses and MOVE targets depend on your own
record layout; what matters is that no overpunch character falls through
undecoded.
Some shops use COBOL's SIGN IS TRAILING SEPARATE / SIGN IS TRAILING
clauses with native EBCDIC zoned data, but on ASCII-converted tapes the
characters above are literally what you read — explicit lookup is the
clearest decode.
Verification tip
Pick one positive and one negative row from the tape, decode by hand using the table, and reconcile against an expected total. If only the positive side works you will see plausible magnitudes but inverted aggregate signs.
References
- IBM Enterprise COBOL Language Reference — "Zoned decimal" / "USAGE
DISPLAY" with
SIGN IS …clauses. - IBM Knowledge Center: "Signed zoned decimal numbers" (overpunch table for
positive
{ A B C D E F G H Iand negative} J K L M N O P Q R).
Tips for Ebcdic Overpunch Decoding
- • Start a fresh session after installing so your agent picks up the new skill.
- • It is part of a pack with 29 skills. Install only the ones you need with --skill to keep triggers precise.
- • If two skills overlap, mention the one you want by name.
Questions about Ebcdic Overpunch Decoding
What does the Ebcdic Overpunch Decoding skill do?
Reference for the EBCDIC "overpunch" / zoned-decimal sign convention where the units position of a numeric field is replaced with a letter that encodes both a digit and a sign. Useful when reading mainframe-style fixed-length tapes whose amount fields appear as digits followed by a letter (e.g. "0000000000123D" or "0000000000045M").
How do I install Ebcdic Overpunch Decoding?
Run "npx skills add benchflow-ai/skillsbench --skill ebcdic-overpunch-decoding" in your project. The skills CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.
Does Ebcdic Overpunch Decoding work in Cursor and Codex?
Yes. Ebcdic Overpunch Decoding uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.
Is Ebcdic Overpunch Decoding free?
Ebcdic Overpunch Decoding is open source on GitHub under the Apache-2.0 license. It is free to install; check the license before commercial use.
Who made Ebcdic Overpunch Decoding?
Ebcdic Overpunch Decoding is published by benchflow-ai in the benchflow-ai/skillsbench repository, together with 28 other skills.





