Data update
This commit is contained in:
parent
35bcdeebf8
commit
74c69a0df6
2427 changed files with 31826 additions and 3468 deletions
43
Task/McNuggets-problem/8080-Assembly/mcnuggets-problem.8080
Normal file
43
Task/McNuggets-problem/8080-Assembly/mcnuggets-problem.8080
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
org 100h
|
||||
lxi h,200h ; Zero out a page to keep nugget flags
|
||||
xra a
|
||||
znugs: mov m,a
|
||||
inr l
|
||||
jnz znugs
|
||||
lxi b,101 ; B = 6 stepper, C = 101 (limit)
|
||||
loopa: mov d,b ; D = 9 stepper
|
||||
loopb: mov l,d ; L = 20 stepper
|
||||
loopc: inr m ; Mark nugget
|
||||
mvi a,20 ; 20 step
|
||||
add l
|
||||
mov l,a
|
||||
cmp c
|
||||
jc loopc
|
||||
mvi a,9 ; 9 step
|
||||
add d
|
||||
mov d,a
|
||||
cmp c
|
||||
jc loopb
|
||||
mvi a,6 ; 6 step
|
||||
add b
|
||||
mov b,a
|
||||
cmp c
|
||||
jc loopa
|
||||
mov l,c ; Find largest number not seen
|
||||
scan: dcr l
|
||||
dcr m
|
||||
jp scan
|
||||
mov a,l
|
||||
mvi b,'0'-1 ; B = high digit
|
||||
digit: inr b
|
||||
sui 10
|
||||
jnc digit
|
||||
adi '0'+10 ; A = low digit
|
||||
lxi h,digits+1
|
||||
mov m,a ; Store digits
|
||||
dcx h
|
||||
mov m,b
|
||||
xchg
|
||||
mvi c,9 ; CP/M print string
|
||||
jmp 5
|
||||
digits: db 0,0,'$' ; Placeholder for output
|
||||
Loading…
Add table
Add a link
Reference in a new issue