Das "I" steht für Integer mit den Ausprägungen 3/5/10/20.
Lässt du das I weg, ist das Feld Zoned, also 1 Ziffer 1 Byte.

Und wenn man Bin 9 hat, ist das ein abgespecktes int(10), da per "B 1 4" ein internes Packed 9, 0 angelegt wird, da ein int(10) nicht 9.999.999.999 aufnehmen kann sondern nur 2.147.483.647.
Die Genauigkeit liegt also nur bei 9 Stellen, die 10. Stelle geht nur von 0-2.

In COBOL ist das auch nicht unbekannt, da man mit PIC 9(9) COMP-4 genau auch nur 9 Stellen ansprechen kann. Es gibt dann noch die Umwandlungsoption NOTRUNC mit der man dann wieder den Maximalwert verwenden kann auch wenn nur 9 signifikante Ziffern definiert sind.