SAP ABAP 计算机只实现10与16进制的加减,这个相当于自己写一次36进制的加减

这篇博客展示了如何在SAP ABAP中实现36进制的加法和减法操作,通过循环和条件判断将10进制与16进制转换,并进行相应的计算。代码中包括了从字符到10进制、16进制的转换,以及结果的更新和格式化处理。
摘要由CSDN通过智能技术生成

计算机只实现10与16进制的加减,这个相当于自己写一次36进制的加减
代码放出来,
data result(5) type c value ‘1ZZZ0’. "待加数字

data r type i value 0.
data C1(1) type c.
data I1 type i.
data X1 type x.
data unit type i value 4. "注意此处需要与result长度保持一致
FIELD-SYMBOLS : TYPE X. "定义一个16进行的字段符号用于转化

DO 300000 TIMES.
perform add.
write :/ result.
ENDDO.

form add.
while r = 0 and unit >= 0.
C1 = result+unit(1).
if C1 >= ‘0’ and C1 <= ‘9’.
move c1 to i1.
endif.
if C1 >= ‘A’ and C1 <= ‘Z’.
ASSIGN C1 TO CASTING. " 字符串转16进
move to i1. " 16进转10进
i1 = i1 - 55 .
endif.
perform addcore using i1 changing r.
if r <= 9.
result+unit(1) = r.
endif.
if r > 9.
DATA: x(4) TYPE x .
Data: t8(8) type c.
Data: t4(4) type c.
r = r + 55. " 10

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值