IBM i (OS/400)如何在CL程序中显式转换十六进制字符串为数字

作者:佚名 上传时间:2023-05-27 运行软件:IBM i (OS/400) 软件版本:IBM i 7.3 版权申诉

本示例代码展示了如何在IBM i (OS/400)的CL程序中显式转换十六进制字符串为数字。实现方式包括将十六进制字符串转换为二进制字符串,然后再将其转换为十进制。

/* 将十六进制字符串转换为二进制字符串 */
PGM
   DCL VAR(&HEXSTR) TYPE(*CHAR) LEN(8) VALUE('5D7B722D')
   DCL VAR(&BINSTR) TYPE(*CHAR) LEN(32)
   DCL VAR(&I) TYPE(*DEC) LEN(2 0)
   DCL VAR(&J) TYPE(*DEC) LEN(2 0)
   DCL VAR(&K) TYPE(*DEC) LEN(1 0)

   CHGVAR VAR(&I) VALUE(1)
   DO WHILE COND((&I * 4) <= %LEN(&BINSTR))
      CHGVAR VAR(&J) VALUE(&I * 4)
      CHGVAR VAR(&K) VALUE(%BIN(&HEXSTR:(&J - 3):4))
      CHGVAR VAR(&BINSTR) VALUE(%SST(&BINSTR:&J:4))
      CHGVAR VAR(&BINSTR) VALUE(%BIN(&K:4))
      CHGVAR VAR(&I) VALUE(&I + 1)
   ENDDO
   /* 将二进制字符串转换为十进制数字 */
   DCL VAR(&DECNUM) TYPE(*DEC) LEN(10 0)
   DCL VAR(&BASE) TYPE(*CHAR) LEN(2) VALUE('10')
   DCL VAR(&BIN) TYPE(*CHAR) LEN(32) VALUE(&BINSTR)
   DCL VAR(&POS) TYPE(*CHAR) LEN(1) VALUE('+')
   CHGVAR VAR(&DECNUM) VALUE(%BINDEC(&BIN:&BASE:&POS))

   /* 显示结果 */
   SNDPGMMSG MSG('十六进制字符串:' + &HEXSTR)
   SNDPGMMSG MSG('转换为二进制字符串:' + &BINSTR)
   SNDPGMMSG MSG('转换为十进制数字:' + %CHAR(&DECNUM))

   ENDPGM

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
IBM i (OS/400)如何在CL程序转换十六进制字符串数字
本示例代码展示了如何在IBM i (OS/400)的CL程序中显式转换十六进制字符串为数字。实现方式包括将十六进制字符串转换为二进制字符串,然后再将其转换为十进制。/* 将十六进制字符串转换为二进制
IBM i 7.3
IBM i (OS/400)
2023-05-27 16:50
何在IBM i (OS/400)中使用CL程序调用RPG程序
本示例演示了如何在IBM i (OS/400)中使用CL程序调用RPG程序的方法。使用CL程序可以快速方便地调用各种RPG程序完成复杂任务。/* CL程序调用RPG程序 */PGMDCL VA
IBM i 7.3
IBM i (OS/400)
2023-03-20 00:23
何在 IBM iOS/400)中使用 CL程序调用RPG程序
本文介绍在IBM i (OS/400)操作系统中使用CL程序(Control Language Program)调用RPG程序的方法。RPG是一种面向IBM i (OS/400)操作系统的高级编程语言
IBM i 7.3
IBM i (OS/400)操作系统
2023-05-23 11:52
IBM iOS/400CL程序如何调用API?
IBM i OS/400是一个功能强大的操作系统,可以使用CL程序调用API(应用程序接口)以实现更高级的功能。下面是一个简单的示例代码,展示了如何在CL程序中调用API。示例代码/* 以下是调用
IBM i 7.4
IBM Rational Developer for i 9.7
2023-03-13 03:06
IBM i (OS/400)如何使用CL语言
IBM i系统中的CL语言(Control Language)是一种能够调用系统命令和编写程序的脚本语言。它基于命令行操作,通过执行一系列指令来完成任务。本文将介绍一些常用的IBM i系统命令和CL语
7.3
IBM i (OS/400)
2023-03-31 18:58
使用IBM i (OS/400)的CL程序自动备份
这个示例展示了如何使用IBM i (OS/400)的CL程序来自动备份系统上关键的文件和目录。这个程序将创建一个备份文件并将它压缩存储到指定的备份目录中。程序还支持自动删除旧的备份文件以节省磁盘空间。
IBM i (OS/400)
IBM
2023-04-01 03:53
何在IBM i (OS/400)中使用CL程序调用SQL语句?
在IBM i (OS/400)中,使用CL程序调用SQL语句涉及以下步骤:创建SQL存储过程: 首先,确保已经在系统上创建了包含所需SQL语句的存储过程。可以使用SQL工具或其他方法创建并测试该
IBM i (OS/400)
IBM i (OS/400)
2023-11-29 08:28
IBM i (OS/400)如何使用CL编写简单的程序
在IBM i系统(OS/400)中,CL是一种常用的编程语言,用于编写各种简单的程序。下面我们将介绍如何使用CL编写简单的程序。示例代码下面是一个使用CL编写的简单程序示例:/* 定义变量 */
OS/400 V7R1
IBM i Access Client Solutions
2023-04-14 17:09
使用IBM i (os/400)CL程序调用Python脚本
本示例使用IBM i操作系统中的CL程序调用Python脚本,实现在IBM i上运行Python脚本的功能。CL程序为IBM i中的命令行接口程序,使用CL程序调用Python脚本可以使得IBM i系
IBM i 7.4
IBM i CL程序 + Python脚本
2023-03-31 20:10
IBM i (OS/400)中使用CL程序实现文件备份
IBM i(以前称为OS/400)是一种企业级操作系统,通常用于大型机系统。本示例将演示如何使用CL程序实现文件备份,以保护数据安全。/* CL程序用于文件备份 */PGM/* 设置备份目录和
IBM i 7.4
IBM i (OS/400) CL程序
2023-10-12 21:54