ในการท้าทายนี้คุณจะต้องเขียนล่ามเป็นภาษาง่ายๆที่ฉันได้ทำขึ้น ภาษานี้ใช้ตัวสะสม A ตัวเดียวซึ่งมีความยาวหนึ่งไบต์ ที่จุดเริ่มต้นของโปรแกรม A = 0 นี่คือคำแนะนำภาษา:
!: ผกผัน
คำสั่งนี้จะแปลงค่าตัวสะสมเล็กน้อย ทุกศูนย์กลายเป็นหนึ่งและทุก ๆ กลายเป็นศูนย์ ! ง่าย
>: เลื่อนไปทางขวา
คำสั่งนี้เลื่อนทุกบิตในที่เดียวไปทางขวา บิตซ้ายสุดจะกลายเป็นศูนย์และบิตขวาสุดจะถูกทิ้ง
<: เลื่อนไปทางซ้าย
คำสั่งนี้เลื่อนทุกบิตในที่เดียวทางซ้าย บิตขวาสุดจะกลายเป็นศูนย์และบิตซ้ายสุดจะถูกทิ้ง
@: สลับ Nybbles
คำสั่งนี้ทำการแลกเปลี่ยนสี่บิตบนสุดของ A ด้วยสี่บิตด้านล่าง ตัวอย่างเช่นถ้า A 01101010และคุณดำเนินการ@A จะเป็น10100110:
____________________
| |
0110 1010 1010 0110
|_______|
นั่นคือคำแนะนำทั้งหมด! ง่ายใช่มั้ย
กฎระเบียบ
- โปรแกรมของคุณต้องยอมรับอินพุตหนึ่งครั้งในตอนเริ่มต้น นี่จะเป็นบรรทัดของรหัส นี่ไม่ใช่ล่ามแบบโต้ตอบ! คุณสามารถยอมรับอินพุตได้เพียงครั้งเดียวและไม่ต้องวนกลับไปที่จุดเริ่มต้นอีกครั้งเมื่อบรรทัดนั้นถูกดำเนินการ
- โปรแกรมของคุณต้องประเมินอินพุตดังกล่าว อักขระทุกตัวที่ไม่ได้กล่าวถึงข้างต้นจะถูกละเว้น
- โปรแกรมของคุณควรพิมพ์ค่าสุดท้ายของแอคคูมูเลเตอร์เป็นทศนิยม
- ใช้กฎมาตรฐานสำหรับภาษาการเขียนโปรแกรมที่ถูกต้อง
- ช่องโหว่มาตรฐานไม่ได้รับอนุญาต
- นี่คือโค้ดกอล์ฟการนับจำนวนไบต์ที่เล็กที่สุดชนะ
ต่อไปนี้เป็นโปรแกรมขนาดเล็กเพื่อทดสอบการส่งของคุณ ก่อนที่ลูกศรจะเป็นรหัสหลังจากได้ผลลัพธ์ที่ต้องการ:
!->255!>>->63!<@->239!nop!&6*!->255
สนุก!



! -> 255ที่เราจะใช้ 8 บิตต่อไบต์ที่นี่ คำถามไม่ชัดเจน