User:Tommyaweosme/2 bits 1 byte
Jump to navigation
Jump to search
<h1>2 Bits, 1 Byte Intrepreter</h1> <p>Please enter your byte.</p> <p>Output: <text id="output"></text></p> <input id="code"> <button onclick="document.getElementById('output').innerHTML=run()">Submit</button> <script> function run(){ const code = []; const source = document.getElementById("code").value; code.push(source[0] + source[1]); code.push(source[2] + source[3]); code.push(source[4] + source[5]); code.push(source[6] + source[7]); let n = 0; let turns = 0; let inc = 1; while (1){ turns = turns + 1 inc = 1 if (turns > 25){ return("Infinite loop detected."); }; if (n == 4){ return ""; }; if (code[n] == 11){ return code.join(""); }; if (code[n] == 01){ code[toaddress(code[n+1])] = act(code[toaddress(code[n+1])]); inc = 2; }; if (code[n] == 10){ n = toaddress(code[n+1])-1; }; n = n + inc }; }; function act(x){ if (x == 00){ return 11; }; if (x == 01){ return 10; }; if (x == 10){ return 00; }; if (x = 11){ return 01; }; }; function toaddress(x){ if (x == 00){ return 0; }; if (x == 01){ return 1; }; if (x == 10){ return 2; }; if (x == 11){ return 3; }; }; </script>