MMIX: 명령행 인자 출력하기
·
명령행 인자를 출력하는 MMIX 코드
argv IS $1
t IS $255
k GREG 0
LOC Data_Segment
GREG @
NewLn BYTE #a,0
LOC #100
Main SET k,0
Loop LDOU t,argv,k
BZ t,Term
TRAP 0,Fputs,StdOut
LDA t,NewLn
TRAP 0,Fputs,StdOut
ADDU k,k,8
JMP Loop
Term TRAP 0,Halt,0
레지스터 $0에 저장된 명령행 인자 갯수를 이용한 명령행 인자 출력
cnt IS $0
argv IS $1
t IS $255
k GREG 0
LOC Data_Segment
GREG @
NewLn BYTE #a,0
LOC #100
Main SET k,0
Loop LDOU t,argv,k
TRAP 0,Fputs,StdOut
LDA t,NewLn
TRAP 0,Fputs,StdOut
ADDU k,k,8
SUB cnt,cnt,1
BNZ cnt,Loop
Term TRAP 0,Halt,0
이전 글: 첫삽
다음 글: 500 Primes