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

将字段从小写今天双色球开奖结果为大写


IBM大型机论坛 -> COBOL程式设计
发表新话题   回复主题
查看上一个主题 :: 查看下一个主题  
作者 信息
Asagar

新的用户


已加入:2012年7月11日
帖子:10
地点:洪都拉斯

发布发表时间:2012年9月18日,星期二,7:48 pm
引用回复

我正在编写一个健全性检查程序,该程序需要将某些字段从小写今天双色球开奖结果为大写。我了解使用“检查”动词是一种选择,还有其他方法可以这样做吗?
回到顶部
查看用户资料 发送私信
罗伯特·桑普

全球主持人


已加入:2008年6月6日
帖子:8569
地点:美国爱荷华州迪比克

发布发表:2012年9月18日,星期二,7:50 pm
引用回复

Enterprise COBOL支持固有功能UPPER-CASE。
回到顶部
查看用户资料 发送私信
埃德·古德曼

活跃的成员


已加入:2011年6月8日
职位:556
地点:美国

发布发表时间:2012年9月18日,星期二,7:51 pm
引用回复

没错,这是一个选择。

另一个是使用称为“大写”的企业COBOL内在函数。它是这样的:

计算ws-upper =功能大写(ws-lower)
回到顶部
查看用户资料 发送私信
dbzTHEdinosauer

全球主持人


已加入:2006年10月20日
帖子:6967
位置:瓷宝座

发布发表时间:2012年9月18日,星期二,7:52 pm
引用回复

功能大写
回到顶部
查看用户资料 发送私信
唐·雷西

活跃的成员


已加入:2010年7月6日
帖子:696
地点:加拿大安大略省惠特比

发布发表时间:2012年9月18日,星期二,7:59 pm
引用回复

提示:在《 Cobol语言参考》中查看内部函数列表。
回到顶部
查看用户资料 发送私信
比尔·伍德格

主持人荣誉


加入时间:2011年3月9日
帖子:7311
位置:矩阵内部

发布发表:2012年9月18日,星期二,晚上8:18
引用回复

是的,还有其他方法。我对明显的建议感到有些“不满” :-)

出于兴趣,“健全性检查程序”是什么意思,它与它有什么关系?
回到顶部
查看用户资料 发送私信
比尔·奥博伊尔

CICS主持人


已加入:2008年1月14日
帖子:2504
地点:美国乔治亚州亚特兰大

发布发表:2012年9月18日,星期二,晚上8:39
引用回复

我偏爱用文字检查今天双色球开奖结果。编译器生成一个内联TR指令,而使用FUNCTION的编译器则生成一个运行时例程的BALR。直到20年前,直到COBOL / 370才引入功能。

在使用INSPECT时,我会说一件事,我总是使用十六进制表示(即:X'81'而不是'a')编码小写字母,而不是冒着像我这样的人带来的机会在CAPS ON模式下进行编码,并意外碰到小写字母被编码的行并将其今天双色球开奖结果为大写。 icon_rolleyes.gif
回到顶部
查看用户资料 发送私信
比尔·奥博伊尔

CICS主持人


已加入:2008年1月14日
帖子:2504
地点:美国乔治亚州亚特兰大

发布发表时间:2012年9月18日,星期二,10:14 pm
引用回复

如果COBOL具有类似于MVZ的命令,那将很好,您可以在其中将4位区域“ C”值移动到现有字母字符串的每个字节的区域,从而执行大写更改。从汇编程序的角度来看,目标字符串的最大长度为256。

使用空格(B'11000001')作为掩码,“ OC”(OR字符)类似命令也可以正常工作,它将打开第二个位(从左侧开始),今天双色球开奖结果为小写的“ a'(B'10000001')今天双色球开奖结果为大写字母'A'(B'11000001')。同样,最大目标字符串长度为256。

当使用这两种方法时,必须确保字符串的内容仅包含小写字母,否则“可能会发生不可预测的结果”,并且您知道这意味着什么。 icon_wink.gif

作为练习,尝试将每个字节移到重新定义的半字PIC 9(04)COMP的低位字节(清除为X'00),将64加到半字,然后将半字低位字节移回串。同样的结果,可怕的开销。 icon_rolleyes.gif
回到顶部
查看用户资料 发送私信
比尔·奥博伊尔

CICS主持人


已加入:2008年1月14日
帖子:2504
地点:美国乔治亚州亚特兰大

发布发表时间:2012年9月18日,星期二,10:32 pm
引用回复

对我以前的帖子的更正(必须在“星期二我脑海中”),关于“ OC”,SPACE是B'01000000'。 icon_rolleyes.gif
回到顶部
查看用户资料 发送私信
比尔·伍德格

主持人荣誉


加入时间:2011年3月9日
帖子:7311
位置:矩阵内部

发布发表:2012年9月18日,星期二,10:51 pm
引用回复

甚至将字段重新定义为可以使用的尽可能大的二进制数和最后一个弥补长度的二进制数,然后添加特定的值(我还没有计算它们:-))。

同样,如果字段仅包含小写字母,则仅允许使用。甚至空间也会出现乱码。

ASCII / EBCDIC今天双色球开奖结果也可能类似,尽管空间很好。
回到顶部
查看用户资料 发送私信
比尔·奥博伊尔

CICS主持人


已加入:2008年1月14日
帖子:2504
地点:美国乔治亚州亚特兰大

发布发表于:2012年9月19日星期三凌晨2:04
引用回复

法案,

或者,将字符串的长度除以4,得到余数。然后,您可以在串联PERFORM中一次将全字X'40404040'(1077952576)添加到4个字节中。如果编译器不支持COMP-5,则必须指定TRUNC(BIN)。

从PERFORM中退出后(如果字符串的长度小于4,那么您将永远不会执行PERFORM),检查除法中是否有余数,如果找到,请照顾到最后1-3个字节,然后'重做。
回到顶部
查看用户资料 发送私信
Asagar

新的用户


已加入:2012年7月11日
帖子:10
地点:洪都拉斯

发布发表:2012年9月19日,星期三,下午3:45
引用回复

我将使用COBOL内在函数UPPER-CASE。

非常感谢您的答复。
回到顶部
查看用户资料 发送私信
比尔·伍德格

主持人荣誉


加入时间:2011年3月9日
帖子:7311
位置:矩阵内部

发布发表:2012年9月19日,星期三,下午3:55
引用回复

您阅读了比尔的第一封信吗?如果您有很多事情要做,那就值得进行比较。

如果不是很多,则FUNCTION方法更容易理解。

也许要进行“健全性检查”,您应该选择一种曲折的解决方案:-)
回到顶部
查看用户资料 发送私信
比尔·奥博伊尔

CICS主持人


已加入:2008年1月14日
帖子:2504
地点:美国乔治亚州亚特兰大

发布发表:2012年9月19日,星期三,下午6:37
引用回复

法案,

吉姆·摩尔(Jim Moore,程序员的程序员)会同意,并且也会选择带有文字的INSPECT。

问候,
回到顶部
查看用户资料 发送私信
迈克尔·辛普森

新的用户


已加入:2012年9月27日
帖子:6
地点:瑞典

发布发表:2012年9月29日,星期六2:23 pm
引用回复

那么在您所有解决方案中的特殊字符呢(我想到瑞典语Åäö到ÅÄÖ)。

不在工作时,我似乎记得这些字符不能使用大写字母。 (也许您可以使用special-names子句使其正常工作?)
回到顶部
查看用户资料 发送私信
比尔·伍德格

主持人荣誉


加入时间:2011年3月9日
帖子:7311
位置:矩阵内部

发布发表:2012年9月29日星期六3:32 pm
引用回复

迈克尔

欢迎来到论坛。

无论是否被认为是重大的疏忽,我都怀疑斯堪的纳维亚半岛以外的绝大多数系统对斯堪的纳维亚字符几乎没有留意。

话虽如此,另一条条例草案建议采用十六进制(X'...')十六进制文字进行的INSPECT ...今天双色球开奖结果将适用于任何单字节值。对于多字节值,INSPECT ... REPLACING可能合适。
回到顶部
查看用户资料 发送私信
迈克尔·辛普森

新的用户


已加入:2012年9月27日
帖子:6
地点:瑞典

发布发表:2012年9月29日星期六6:35 pm
引用回复

我同意斯堪的纳维亚的评论。

我的意思是,这可能与特殊的法语,西班牙语,德语等字符集也相关
回到顶部
查看用户资料 发送私信
查看上一个主题 :: :: 查看下一个主题  
发表新话题   回复主题 查看书签
所有时间均为格林尼治标准时间+ 6小时
论坛索引 -> COBOL程式设计

 


类似主题
话题 论坛 回覆
没有新帖 将文件从PD今天双色球开奖结果为显示... 同步排序 4
没有新帖 将十六进制今天双色球开奖结果为PD特殊条件 同步排序 3
没有新帖 将记录分解为各个字段,每个字段... 同步排序 2
没有新帖 MODE = IN或... CICS 3
没有新帖 在不同的字段上排序,删除重复项... 同步排序 8
搜索我们的论坛:


回到顶部