*&---------------------------------------------------------------------*
*& Form CONVERT_BINARY
*&---------------------------------------------------------------------*
form CONVERT_BINARY USING P_VAL P_OUT.
DATA: L_VALUE TYPE STRING,
L_DIV TYPE P DECIMALS 1,
L_MOD(1) TYPE N,
L_OUT(6) TYPE N.
DATA: L_VAL TYPE I.
L_VAL = P_VAL.
DO.
IF L_VAL >= 2.
L_MOD = L_VAL MOD 2.
L_DIV = L_VAL / 2.
L_VAL = TRUNC( L_DIV ).
CONCATENATE L_MOD L_VALUE INTO L_VALUE.
ELSE.
CONCATENATE '1' L_VALUE INTO L_VALUE.
EXIT.
ENDIF.
ENDDO.
L_OUT = L_VALUE.
P_OUT = L_OUT.
endform. " CONVERT_BINARY
*& Form CONVERT_BINARY
*&---------------------------------------------------------------------*
form CONVERT_BINARY USING P_VAL P_OUT.
DATA: L_VALUE TYPE STRING,
L_DIV TYPE P DECIMALS 1,
L_MOD(1) TYPE N,
L_OUT(6) TYPE N.
DATA: L_VAL TYPE I.
L_VAL = P_VAL.
DO.
IF L_VAL >= 2.
L_MOD = L_VAL MOD 2.
L_DIV = L_VAL / 2.
L_VAL = TRUNC( L_DIV ).
CONCATENATE L_MOD L_VALUE INTO L_VALUE.
ELSE.
CONCATENATE '1' L_VALUE INTO L_VALUE.
EXIT.
ENDIF.
ENDDO.
L_OUT = L_VALUE.
P_OUT = L_OUT.
endform. " CONVERT_BINARY
本文介绍了一个用于将十进制数转换为二进制数的ABAP程序。通过递归除以2并记录余数的方式实现了转换过程。该程序使用了ABAP语言的数据类型和操作符来完成这一任务。
3170

被折叠的 条评论
为什么被折叠?



