LMC에서 알 수없는 입력 수의 최대 / 최소?

Nov 23 2020

LMC에서 알 수없는 최대 / 최소 입력 수를 어떻게 인쇄 할 수 있습니까?

나는 INPUT 2에서 INPUT 1을 SUB INPUT 2에서 SUB INPUT 2에서 음수인지 양수인지 확인할 수 있다는 것을 알고 있지만 입력을로드 할 수 있도록 입력 이름을 지정하는 방법을 모릅니다.

추신 : "알 수없는 입력 수"부분에 도움이되는 유용한 링크를 찾았 습니다. LMC (작은 사람 컴퓨터)의 다른 주소에 알 수없는 입력 수를 어떻게 저장할 수 있습니까?

답변

2 trincot Nov 23 2020 at 22:23

결정되지 않은 수의 입력 값을 저장하는 코드에 연결합니다. 그러나 필요하지 않은 경우 : 입력 값을 읽는 동안 최소 및 최대를 추적 할 수 있습니다. 실제로 각 입력 값을 저장할 필요가 없습니다 .

#input: 5 3 9 6 2 4
          INP ; data size
          STA count
          BRZ exit ; nothing to do
; initialise
          LDA zero
          STA max
          LDA big
          STA min
loop      LDA count
          SUB one
          BRP nextvalue
output    LDA min
          OUT
          LDA max
          OUT
exit      HLT

nextvalue STA count
          INP ; get data value
          STA value
          SUB min
          BRP checkmax
          LDA value
          STA min
checkmax  LDA max
          SUB value
          BRP loop
          LDA value
          STA max
          BRA loop

zero      DAT 0
one       DAT 1
big       DAT 999
count     DAT
min       DAT
max       DAT
value     DAT

<script src="https://cdn.jsdelivr.net/gh/trincot/[email protected]/lmc.js"></script>