× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Bill Hopkins wrote:
Display Program Variables Program . . . . . . . . . . . . . . . . : TESTR Recursion level . . . . . . . . . . . . : 1 Start position . . . . . . . . . . . . : 1 Format . . . . . . . . . . . . . . . . : *CHAR Length . . . . . . . . . . . . . . . . : *DCL Variable . . . . . . . . . . . . . . . : PACK80 Type . . . . . . . . . . . . . . . . : PACKED Length . . . . . . . . . . . . . . . : 8 0 ' 234' Here you go. Test results with 'STU'

Thanks
Bill H





Tadashi Kakefuda <xenxen@xxxxxxxxxxxxxxxxx> Sent by: rpg400-l-bounces@xxxxxxxxxxxx 07/30/2003 09:53 PM Please respond to RPG programming on the AS400 / iSeries

To: "'RPG programming on the AS400 / iSeries'" <rpg400-l@xxxxxxxxxxxx>
cc: Subject: Re: Move 'ABC' to Numeric?



Hi, Bill


Huumm, very interesting. I didn't know such thing. I've never coded such statments before.

It seems that the RPG converts several characters that are considered as character numerics into normal numeric automatically. I mean 'MOVE 'ABC' PACK80' is equal to 'MOVE '123' PACK80'

Code Page 37

ABCDEFGHI=x'c1.....c9' character numeric
JKLMNOPQR=X'd1.....d9' negative numeric
STUVWXYZ=x'e2......e9' ???
123456789=x'f1.....f9' positive numeric

Well, would you try 'MOVE 'STU' pack80' ? Does it work without any errors?


For completeness, here are the results for moving the 16 values from x'010203' to x'F1F2F3' to an 8 digit packed decimal initialized to 66666666:

> call stu
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123
  DSPLY  66666123-
  DSPLY  66666123
  DSPLY  66666123

BTW, results are similar if the target is a 10I0 integer variable.

Oh, the joys of dealing with the MOVE opcode!

As mentioned before, for numeric targets and character Factor 2, MOVE treats the bytes of the Factor 2 value as a zoned decimal numeric value. The appropriate conversions between the various numeric formats are automatic.

Cheers! Hans



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.