
Сообщение от
BelaLugoci
макросы понятно нарушают строй, но они весьма не монструозные
Но способны творить
Пример кода на языке ассемблера с макросами 
Код:
PROCEDURE CNVS
BEGIN
LET R0 := #BUF
THRU R4 := #EBUF-BUF
LET (R0)+ :B= #SPACE
END
LET -(SP) := #4
LOOP
LET R4 := #0
LET R5 := #0
LOOP
IF R2 EQ #0 AND R3 LO R1 LEAVE LOOP
ADD #1, R5
ADC R4
SUB R1, R3
SBC R2
END
LET (SP) := (SP) - #1
IF RESULT IS EQ THEN
LET -(R0) :B= #SPACE
LET (SP) := #3
END
LET -(R0) :B= R3
LET (R0) :B= (R0) SET.BY #'0
LET R2 := R4
LET R3 := R5
IF R2 EQ #0 AND R3 EQ #0 LEAVE LOOP
END
POP
LET R1 := #BUF
$GOTO $PRINT
END CNVS