RosettaCodeData/Task/Loops-While/360-Assembly/loops-while-2.360

19 lines
891 B
Plaintext

* While 27/06/2016
WHILELOO CSECT
USING WHILELOO,12 set base register
LR 12,15 load base register
LA 6,1024 v=1024
DO WHILE=(LTR,6,P,6) do while v>0
CVD 6,PACKED convert v to packed decimal
OI PACKED+7,X'0F' prepare unpack
UNPK WTOTXT,PACKED packed decimal to zoned printable
WTO MF=(E,WTOMSG) display
SRA 6,1 v=v/2 by right shift
ENDDO , end while
BR 14 return to caller
PACKED DS PL8 packed decimal
WTOMSG DS 0F full word alignment for wto
WTOLEN DC AL2(8),H'0' length of wto buffer (4+1)
WTOTXT DC CL4' ' wto text
END WHILELOO