$!----------------------------------------------------------------------------+ $! Show a number in binary grouped by nibbles | $!----------------------------------------------------------------------------+ $! $ SAVERIFY = 'F$VERIFY(0)' $ IF P1 .EQS. "" THEN INQUIRE P1 "Number" $ IF P1 .EQS. "" THEN GOTO FINISHED $ DECIMAL = F$INTEGER(P1) ! You can use %O and %X as well $ HEX = F$FAO("!XL",DECIMAL) ! Get the number in Hex $ INDX = 0 ! Index into Hex number string $ BINNUM = " Binary =" $ LOOP: $ HEXDIG = %X'F$EXTRACT(INDX,1,HEX)' $ DEC0 = (HEXDIG .AND. 8) .NE. 0 $ DEC1 = (HEXDIG .AND. 4) .NE. 0 $ DEC2 = (HEXDIG .AND. 2) .NE. 0 $ DEC3 = (HEXDIG .AND. 1) .NE. 0 $ BINNUM = BINNUM + " ''DEC0'''DEC1'''DEC2'''DEC3'" $ INDX = INDX + 1 $ IF INDX .LT. 8 THEN GOTO LOOP $ SHOW SYMBOL DECIMAL $ WRITE SYS$OUTPUT BINNUM $ FINISHED: $ EXIT 1 + 0*F$VERIFY(SAVERIFY)