IBM大型机论坛索引
 
 登录
 
IBM大型机论坛索引 大型机:搜索 IBM Mainframe论坛:常见问题解答  寄存器
 

建立排序键


IBM大型机论坛 -> DFSORT / ICETOOL
 发表新话题     回复主题
查看上一个主题 :: 查看下一个主题  
作者 信息
彼得·舍弗

新的用户


加入:2021年1月27日
帖子:2
地点:美国

 发布 发表:2021年1月27日星期三4:37 pm
引用回复

亲爱的,这可能是我提出问题的论坛。如果是这样,请指出我的问题应该去哪里。

在某个时候,我看到了一种算法,该算法将采用不同类型的字段并将其转换(在复制后)为可以简单比较的字节。例如,不能简单地比较一个简单的两字节整数,因为-1(所有fox)都似乎大于0(所有十六进制零)。

当然,问题不限于两字节整数,甚至任何大小的整数。例如,压缩十进制字段的符号半字节在右端(这只是压缩十进制的一个问题)。

如果我没记错的话,对于整数,压缩十进制,十六进制浮点数等都有特殊的规则。

有谁知道我在哪里可以找到这个算法?规则是什么?


先感谢您。
回到顶部
查看用户资料 发送私信
恩里科·索里切蒂

高级主持人


已加入:2007年3月14日
帖子:10715
所在地:意大利

 发布 发表:2021年1月27日星期三5:39 pm
引用回复

所提出的问题没有任何意义,

举例说明您想要/需要比较的内容...

DFSORT自行提供了您需要进行比较的几乎所有内容

您是否尝试查看dfsort手册以提醒受支持的数据类型
一个开始获得提示的好地方可能是

www.ibm.com/support/pages/smart-dfsort-tricks

而且...没有通用算法...
您必须定义可比格式的规则,将所有内容转换为可比格式,然后从那里开始
回到顶部
查看用户资料 发送私信
彼得·舍弗

新的用户


加入:2021年1月27日
帖子:2
地点:美国

 发布 发表:2021年1月27日星期三9:27下午
引用回复

Enrico-Sorichetti,我知道DFSORT之类的标准Sort程序可以处理几乎所有类型的数据并进行适当的排序。

但是,我的目标有些不同。我想做的是转换我的数据,以便可以使用CLC进行比较。当然,CLC已经可以用于简单的(单字节)EBCDIC字符串。

但是,对于其他类型(例如,带符号的整数和/或压缩的十进制数据等),CLC将在不转换数据的情况下不起作用。

在某个时候,我看到了进行转换的算法,以便CLC可以正常工作。但我现在找不到。
回到顶部
查看用户资料 发送私信
谢尔盖肯

活跃的成员


已加入:2008年4月29日
帖子:939
所在地:马里兰

 发布 发表:2021年1月27日星期三9:47下午
引用回复

彼得·舍弗写道:
例如,不能简单地比较一个简单的两字节整数,因为-1(所有fox)都似乎大于0(所有十六进制零)。

您必须使用SPECIFIC FORMAT比较任何值,描述此字段中的数据以及如何正确处理它们。

FI-该字段被认为是 签名二进制 ,以及比较(-1)<(+1)是对的。那就是X'FFFF'< X'0001'
BI-该字段被视为 无符号二进制,并且值看起来像(-1),例如X'FFFF'实际上被视为(+65535),它大于(+1)X'0001'。
如果您尝试将这些值比较为CH(字符格式),那么您将获得所得到的。

打包十进制,解压缩十进制等格式的相同故事。更不用说浮点格式了。

像往常一样:RTFM ... icon_exclaim.gif
回到顶部
查看用户资料 发送私信
查看上一个主题 :: :: 查看下一个主题  
 发表新话题     回复主题 查看书签
所有时间均为格林尼治标准时间+ 6小时
论坛索引 -> DFSORT / ICETOOL

 


类似主题
话题 论坛 回覆
 没有新帖 很大排序失败-寻求识别... DFSORT / ICETOOL 7
 没有新帖 使用SORT进行日期转换 同步排序 4
 没有新帖 哪个SORT实用程序可以改善性能? DFSORT / ICETOOL 16
 没有新帖 使用基于关闭的VB记录排序... DFSORT / ICETOOL 6
 没有新帖 COBOL VS SORT实用程序,用于文件格式... COBOL程式设计 6
搜索我们的论坛:


 回到顶部