[发明专利]十进制移位和除法指令有效
申请号: | 201780060585.8 | 申请日: | 2017-09-21 |
公开(公告)号: | CN109791478B | 公开(公告)日: | 2023-05-26 |
发明(设计)人: | J·布拉德伯里;R·科普兰;S·M·穆勒;E·施瓦尔茨;S·卡罗格 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F7/491 | 分类号: | G06F7/491 |
代理公司: | 北京市中咨律师事务所 11247 | 代理人: | 刘都;于静 |
地址: | 美国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 十进制 移位 除法 指令 | ||
执行用于执行移位和除法运算的指令。执行包括在指定方向中以选择的量对值移位以提供被除数,所选择的量是用户定义的。由除数除以被除数以获得商。选择商的至少一个子集作为结果。该结果被用于计算环境内的处理。
背景技术
一个或多个方面一般涉及计算环境内的处理,尤其涉及改进此类处理。
在计算环境的处理器内执行的应用程序控制处理器的行为。应用程序是使用编程语言创建的,此类编程语言旨在将指令传递给处理器。存在各种类型的编程语言,并且每种语言可以使用一种或多种类型的编码来表示数据。
例如,缩放的十进制整数(也被称为缩放的二进制编码的十进制/缩放的BCD)是许多COBOL和PL/I程序中以及DB2数据库管理系统中的公共数据类型。缩放的BCD数是BCD数加上格式描述符(n.k),其中BCD数被解释为在小数点之前具有n位并且在小数点之后具有k位(即,具有k个分数位),或者要被乘以10-k的十进制整数。
对具有同一k参数的缩放的BCD数据执行加法和减法是直接的,因为数据被正确对准并且结果具有相同的分数位数。除法是更复杂的,因为两个数字的整数除法提供了商的整数部分。缺少k个分数位。
例如,如果:
A=4444.44,B=3333.33,Q=0001.333
正常的整数除法传递商Q=1,但不传递分数位。此外,用于执行BCD除法运算的传统代码可能相当复杂,需要冗长的运算序列。
发明内容
通过提供用于促进计算环境中的处理的计算机程序产品,克服了现有技术的缺点并提供了额外的优点。计算机程序产品包括存储介质,存储介质可由处理电路读取并存储用于由处理电路执行以执行方法的指令。方法例如包括获得用于执行的指令,指令用于执行移位和除法运算。执行指令,并且执行包括在指定方向以选择的量对值移位以提供被除数。所选择的量是用户定义的。由除数除以被除数以获得商。选择商的至少一个子集作为结果。将结果放在选择的位置,结果被用于计算环境内的处理。使用执行缩放的BCD除法运算的单个指令通过消除冗长的指令序列并减少要获取、解码和执行的指令的数量来改进性能。
在一个示例中,值是十进制整数,并且商的至少一个子集是商的所选择的位数。所选择的位数包括整数位数和分数位数。
此外,在一个实施例中,执行包括确定结果的符号,以及将符号包括在所选择的位置中。作为一个示例,确定符号包括检查由指令提供的控件。控件例如被提供在指令的掩码字段中。
此外,在一个实施例中,执行包括从指令的一个或多个字段获得值,检查值的有效性,以及基于该检查指示值是有效的而执行移位。
在示例中,指定方向是左,所选择的量是从指令的字段中获得的,并且所选择的位置是寄存器,该寄存器是使用指令的至少一个字段来指定的。至少一个字段包括指定寄存器编号的寄存器字段和指定要被附加到寄存器编号的扩展值的扩展字段。
本文还描述并要求保护与一个或多个方面有关的方法和系统。此外,本文还描述并可要求保护与一个或多个方面有关的服务。
通过本文描述的技术实现了额外的特征和优点。本文详细描述了其它实施例和方面,并且这些实施例和方面被认为是所要求保护的方面的一部分。
附图说明
在说明书结尾的权利要求中作为示例特别指出并清楚地要求保护一个或多个方面。通过结合附图的以下详细描述,一个或多个方面的前述和目的、特征和优点是显而易见的,在附图中:
图1A描绘了结合和使用本发明的一个或多个方面的计算环境的一个示例;
图1B描绘了根据本发明的一方面的图1A中的处理器的进一步细节;
图2A描绘了结合和使用本发明的一个或多个方面的计算环境的另一示例;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780060585.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:混合式模块化存储提取系统
- 下一篇:十进制乘法和移位指令