On Fri, 11 Feb 2022 18:40:42 +0000 "Schmitt, Michael" <[email protected]> wrote:
:>What do you want to do if it is /not/ FACEBD? :>Also, while the machine instructions consider F to be positive, IBM COBOL since VS COBOL II really wants 3 signs: F, C, D, where F is UNSIGNED. So it does make a difference when a packed or zoned field is being returned from an assembler program; the value really should match how the COBOL program is expecting it. :>That is, if the COBOL program is expecting PIC S9(3) PACKED-DECIMAL but the value is x'123F', or the COBOL program expects PIC 9(3) PACKED-DECIMAL and the value is x'123C', that would be bad. Really bad. :>From a practical standpoint it would prevent the COBOL program from being able to generate maximally efficient NUMPROC(PFD) code -- you wouldn't be able to use that compile option. :>This is called "COBOL Preferred Signs", and started in 1992 or so. I would assume that by now the IF NUMERIC for a packed field would generate a TP, so I don't see why there would be an issue if a non-prefered sign is provided as a parameter or return value. Can you provide an example? :>-----Original Message----- :>From: IBM Mainframe Assembler List <[email protected]> On Behalf Of Dave Clark :>Sent: Friday, February 11, 2022 12:01 PM :>To: [email protected] :>Subject: Rules for Zoned Overpunch :> I know that x'F1' and x'C1' are positive and that x'D1' is :>negative. But what if I find x'A1', x'B1', or x'E1' for overpunch values? :> What is the shortest way (in terms of assembler instructions) to validate :>these into just two classes -- positive and negative? -- Binyamin Dissen <[email protected]> http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel
