last day (15 days later) » 

4:04 PM
0
A: Sandbox for Proposed Challenges

l4m2Shenzhen I/O command encoder/decoder The basic elements in Shenzhen I/O are: P = p0 | p1 X = x0 | x1 | x2 | x3 R = acc | dat | P | X | null L = 1 | 2 | 3 | ... | 15 V = R | -999 | -998 | -997 | ... | 998 | 999 acc | dat | P | X are registers containing number between -999 and 999, but you can...

 
BMO
What is Shenzhen I/O? Why would I care about I it doesn't appear anywhere? What is the input of a decoder, what is the input of an encoder? It's hard to tell what this challenge is about.. Is it about encoding/compression, decoding/parsing? Sum of length of what (encoded program or encoder and decoder)?
 
@BMO Who care what SZIO is. I appear in V. Input a command and output two bytes. Vise versa. It should be a encoding/decoding for you can decide your own encoding rule
 
BMO
Ah I didn't see that, my bad. I would add an motivation or at the very least a link, st. people know what Shenzhen I/O is. Rules should be ok, I think.
But this is not possible to encode in 2 bytes, not even dst V V only: V can be \$2000\$ values, for that I will need \$\lceil \log_2 2000 \rceil = 11\$ bits, to encode the tuple (V1,V2) I will need \$22\$ bits plus two bits for +-@ . Total is: \$24\$ bits which is more than two bytes. And this doesn't even account for the encoding of dst itself.
 
@BMO If two commands do exactly same thing they are replacable, and dst only have 297 possible behaviors
 
BMO
You should assume that people have no knowledge about this assembly language. What are the semantics of +-@ ? Would mov null acc = nop (the current rules seem to suggest so, but my intuition tells me otherwise)? etc. Also, I'm not convinced that it's possible to encode each instruction (or an equivalent thereof) in 2 bytes, are you certain that it's possible?
 
4:04 PM
@BMO Th +-@ are just there for purposes unrelated to this challenge. Since "null is register that reading from it provides 0" it equals to mov 0 acc
@BMO Should I remove the +-@ part and allow only 14 bits?
 
BMO
@l4m2 That's what I thought, but rule 1 suggests othrewise
"If element(s) in P and X appear, the existance matters." reads as if acc doesn't matter
I think you know this assembly language very well and most things seem self-explanatory for you, but most people don't know this language at all.
 
Rule 1 mean that mov p1 null reads p1 and write to null, which has no effect; but the existance of p1 still matter
Knowing the expression may be unclear is why I post it in sandbox
You can see I use lots of unreplacable to avoid too much explanation on unnecessary stuff
 
BMO
But why is it unnecessary stuff? Do you want people to write an assembler and disassembler for a language they don't understand?
Basically, what do you expect out of this challenge?
Where do these overlap: mov {0..1000} p{0,1}, mov {-999..999} x{0..3}`?
To encode these you'll need 14bits alone, I'm still not convinced that this challenge is solvable?
 
4:25 PM
They don't need to know what XBus is
but that slx can't be replaced with another instruction
 
BMO
So the semantics of mov V R are not just R := V but more involved?
I don't even know what XBus is..
 

last day (15 days later) »