条件转移指令完成

main
阳光少年 5 months ago
parent 7f4448884d
commit 0e51b55db2

@ -2431,37 +2431,37 @@ v3.0 hex words addressed
4be8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4be8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4bf0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4bf0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
4bf8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4bf8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c00: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c00: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c08: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c08: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c10: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c10: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c18: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c18: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c20: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c20: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c28: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c28: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c30: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c30: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c38: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c38: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c40: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c40: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c48: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c48: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c50: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c50: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c58: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c58: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c60: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c60: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c68: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c68: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c70: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c70: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c78: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c78: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c80: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c80: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c88: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c88: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4c90: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4c90: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4c98: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4c98: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4ca0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4ca0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4ca8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4ca8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4cb0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4cb0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4cb8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4cb8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4cc0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4cc0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4cc8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4cc8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4cd0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4cd0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4cd8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4cd8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4ce0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4ce0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4ce8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4ce8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4cf0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4cf0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
4cf8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4cf8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
4d00: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 4d00: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
4d08: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4d08: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -2561,35 +2561,35 @@ v3.0 hex words addressed
4ff8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 4ff8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5000: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5000: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5008: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5008: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5010: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5010: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5018: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5018: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5020: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5020: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5028: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5028: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5030: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5030: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5038: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5038: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5040: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5040: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5048: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5048: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5050: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5050: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5058: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5058: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5060: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5060: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5068: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5068: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5070: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5070: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5078: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5078: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5080: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5080: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5088: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5088: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5090: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5090: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5098: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5098: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
50a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 50a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
50a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 50a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
50b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 50b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
50b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 50b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
50c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 50c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
50c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 50c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
50d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 50d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
50d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 50d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
50e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 50e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
50e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 50e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
50f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 50f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
50f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 50f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5100: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5100: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5108: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5108: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -2687,35 +2687,35 @@ v3.0 hex words addressed
53e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 53e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
53f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 53f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
53f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 53f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5400: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5400: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5408: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5408: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5410: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5410: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5418: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5418: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5420: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5420: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5428: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5428: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5430: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5430: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5438: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5438: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5440: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5440: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5448: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5448: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5450: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5450: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5458: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5458: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5460: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5460: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5468: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5468: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5470: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5470: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5478: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5478: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5480: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5480: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5488: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5488: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5490: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5490: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5498: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5498: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
54a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 54a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
54a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 54a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
54b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 54b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
54b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 54b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
54c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 54c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
54c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 54c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
54d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 54d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
54d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 54d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
54e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 54e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
54e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 54e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
54f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 54f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
54f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 54f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -2819,33 +2819,33 @@ v3.0 hex words addressed
5808: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5808: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5810: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5810: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5818: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5818: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5820: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5820: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5828: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5828: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5830: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5830: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5838: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5838: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5840: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5840: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5848: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5848: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5850: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5850: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5858: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5858: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5860: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5860: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5868: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5868: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5870: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5870: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5878: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5878: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5880: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5880: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5888: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5888: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5890: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5890: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5898: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5898: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
58a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 58a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
58a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 58a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
58b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 58b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
58b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 58b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
58c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 58c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
58c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 58c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
58d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 58d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
58d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 58d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
58e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 58e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
58e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 58e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
58f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 58f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
58f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 58f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5900: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5900: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5908: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5908: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -2943,33 +2943,33 @@ v3.0 hex words addressed
5be8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5be8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5bf0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5bf0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5bf8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5bf8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c00: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c00: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5c08: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c08: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c10: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c10: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5c18: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c18: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c20: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c20: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5c28: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c28: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c30: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c30: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5c38: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c38: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c40: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c40: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5c48: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c48: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c50: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c50: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5c58: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c58: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c60: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c60: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5c68: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c68: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c70: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c70: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5c78: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c78: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c80: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c80: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5c88: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c88: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5c90: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5c90: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5c98: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5c98: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5ca0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5ca0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5ca8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5ca8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5cb0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5cb0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5cb8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5cb8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5cc0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5cc0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5cc8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5cc8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5cd0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5cd0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
5cd8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5cd8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
5ce0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 5ce0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
5ce8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 5ce8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -3079,13 +3079,13 @@ v3.0 hex words addressed
6028: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6028: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6030: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6030: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
6038: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6038: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6040: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6040: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6048: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6048: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6050: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6050: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6058: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6058: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6060: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6060: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6068: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6068: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6070: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6070: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6078: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6078: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6080: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6080: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
6088: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6088: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -3095,13 +3095,13 @@ v3.0 hex words addressed
60a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 60a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
60b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 60b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
60b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 60b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
60c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 60c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
60c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 60c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
60d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 60d0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
60d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 60d8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
60e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 60e0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
60e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 60e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
60f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 60f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
60f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 60f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6100: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6100: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
6108: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6108: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -3199,13 +3199,13 @@ v3.0 hex words addressed
63e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 63e8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
63f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 63f0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
63f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 63f8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6400: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6400: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6408: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6408: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6410: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6410: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6418: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6418: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6420: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6420: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6428: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6428: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6430: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6430: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6438: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6438: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6440: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6440: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
6448: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6448: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
@ -3215,13 +3215,13 @@ v3.0 hex words addressed
6468: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6468: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6470: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6470: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
6478: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6478: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6480: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6480: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6488: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6488: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
6490: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 6490: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
6498: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 6498: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
64a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 64a0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
64a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 64a8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
64b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 64b0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 0000c006 40000000
64b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 64b8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000
64c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000 64c0: 00008040 0001c0a4 00008040 0001c0c4 00008040 0001c0e4 40000000 40000000
64c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000 64c8: 40000000 40000000 40000000 40000000 40000000 40000000 40000000 40000000

@ -24,6 +24,14 @@ XOR = 6 << pin.ADDR_2_SHIFT | pin.ADDR_2
INC = 0 << pin.ADDR_1_SHIFT | pin.ADDR_1 INC = 0 << pin.ADDR_1_SHIFT | pin.ADDR_1
DEC = 1 << pin.ADDR_1_SHIFT | pin.ADDR_1 DEC = 1 << pin.ADDR_1_SHIFT | pin.ADDR_1
NOT = 2 << pin.ADDR_1_SHIFT | pin.ADDR_1 NOT = 2 << pin.ADDR_1_SHIFT | pin.ADDR_1
JMP = 3 << pin.ADDR_1_SHIFT | pin.ADDR_1
JO = 4 << pin.ADDR_1_SHIFT | pin.ADDR_1 # 溢出跳转
JNO = 5 << pin.ADDR_1_SHIFT | pin.ADDR_1 # 不溢出跳转
JZ = 6 << pin.ADDR_1_SHIFT | pin.ADDR_1 # 如果为0跳转
JNZ = 7 << pin.ADDR_1_SHIFT | pin.ADDR_1 # 非0跳转
JP = 8 << pin.ADDR_1_SHIFT | pin.ADDR_1 # 奇数跳转
JNP = 9 << pin.ADDR_1_SHIFT | pin.ADDR_1 # 偶数跳转
NOP = 0b0 NOP = 0b0
@ -138,36 +146,36 @@ INSTRUCTIONS = {
], ],
}, },
AND: { AND: {
(pin.AM_REG, pin.AM_INS): [ # sub b, 5 (pin.AM_REG, pin.AM_INS): [ # and b, 5
pin.DST_R | pin.A_IN, # 将b寄存器内的值 转移到 A寄存器 pin.DST_R | pin.A_IN, # 将b寄存器内的值 转移到 A寄存器
pin.SRC_OUT | pin.B_IN, # 将 src中的值 转移到 b寄存器 pin.SRC_OUT | pin.B_IN, # 将 src中的值 转移到 b寄存器
pin.OP_AND | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_AND | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
], ],
(pin.AM_REG, pin.AM_REG): [ # sub a, b (pin.AM_REG, pin.AM_REG): [ # and a, b
pin.DST_R | pin.A_IN, pin.DST_R | pin.A_IN,
pin.SRC_R | pin.B_IN, pin.SRC_R | pin.B_IN,
pin.OP_AND | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_AND | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
], ],
}, },
OR: { OR: {
(pin.AM_REG, pin.AM_INS): [ # sub b, 5 (pin.AM_REG, pin.AM_INS): [ # or b, 5
pin.DST_R | pin.A_IN, # 将b寄存器内的值 转移到 A寄存器 pin.DST_R | pin.A_IN, # 将b寄存器内的值 转移到 A寄存器
pin.SRC_OUT | pin.B_IN, # 将 src中的值 转移到 b寄存器 pin.SRC_OUT | pin.B_IN, # 将 src中的值 转移到 b寄存器
pin.OP_OR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_OR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
], ],
(pin.AM_REG, pin.AM_REG): [ # sub a, b (pin.AM_REG, pin.AM_REG): [ # or a, b
pin.DST_R | pin.A_IN, pin.DST_R | pin.A_IN,
pin.SRC_R | pin.B_IN, pin.SRC_R | pin.B_IN,
pin.OP_OR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_OR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
], ],
}, },
XOR: { XOR: {
(pin.AM_REG, pin.AM_INS): [ # sub b, 5 (pin.AM_REG, pin.AM_INS): [ # xor b, 5
pin.DST_R | pin.A_IN, # 将b寄存器内的值 转移到 A寄存器 pin.DST_R | pin.A_IN, # 将b寄存器内的值 转移到 A寄存器
pin.SRC_OUT | pin.B_IN, # 将 src中的值 转移到 b寄存器 pin.SRC_OUT | pin.B_IN, # 将 src中的值 转移到 b寄存器
pin.OP_XOR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_XOR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
], ],
(pin.AM_REG, pin.AM_REG): [ # sub a, b (pin.AM_REG, pin.AM_REG): [ # xor a, b
pin.DST_R | pin.A_IN, pin.DST_R | pin.A_IN,
pin.SRC_R | pin.B_IN, pin.SRC_R | pin.B_IN,
pin.OP_XOR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_XOR | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
@ -182,18 +190,53 @@ INSTRUCTIONS = {
], ],
}, },
DEC: { DEC: {
pin.AM_REG: [ # inc b pin.AM_REG: [ # dec b
pin.DST_R | pin.A_IN, pin.DST_R | pin.A_IN,
pin.OP_DEC | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_DEC | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
], ],
}, },
NOT: { NOT: {
pin.AM_REG: [ # inc b pin.AM_REG: [ # not b
pin.DST_R | pin.A_IN, pin.DST_R | pin.A_IN,
pin.OP_NOT | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW pin.OP_NOT | pin.ALU_OUT | pin.DST_W | pin.ALU_PSW
], ],
} },
JMP: { # jmp 0x5 跳转到立即数的地址
pin.AM_INS: [
pin.DST_OUT | pin.PC_IN,
]
},
JO: {
pin.AM_INS: [
pin.DST_OUT | pin.PC_IN,
]
},
JNO: {
pin.AM_INS: [
pin.DST_OUT | pin.PC_IN,
]
},
JZ: {
pin.AM_INS: [
pin.DST_OUT | pin.PC_IN,
]
},
JNZ: {
pin.AM_INS: [
pin.DST_OUT | pin.PC_IN,
]
},
JP: {
pin.AM_INS: [
pin.DST_OUT | pin.PC_IN,
]
},
JNP: {
pin.AM_INS: [
pin.DST_OUT | pin.PC_IN,
]
},
}, },
0: { 0: {
NOP: [ NOP: [

@ -21,13 +21,19 @@ OP2_STR_MAP = {
"and": ASM.AND, "and": ASM.AND,
"or": ASM.OR, "or": ASM.OR,
"xor": ASM.XOR, "xor": ASM.XOR,
} }
OP1_STR_MAP = { OP1_STR_MAP = {
"inc": ASM.INC, "inc": ASM.INC,
"dec": ASM.DEC, "dec": ASM.DEC,
"not": ASM.NOT, "not": ASM.NOT,
"jmp": ASM.JMP,
"jo": ASM.JO,
"jno": ASM.JNO,
"jz": ASM.JZ,
"jnz": ASM.JNZ,
"jp": ASM.JP,
"jnp": ASM.JNP,
} }
OP0_STR_MAP = { OP0_STR_MAP = {
@ -41,17 +47,30 @@ OP0_VALUE_SET = set(OP0_STR_MAP.values())
class Code: class Code:
TYPE_CODE = 1
TYPE_LABLE = 2
def __init__(self, number, source): def __init__(self, number, source):
self.number: int = number # 行号 self.number: int = number # 源文件中行号
self.source: str = source # 源代码 self.source: str = source # 源代码
self._op_str = self._src = self._dst = None self._op_str = self._src = self._dst = None
self.code_type = ...
self.name = ...
self.code_from_bin_addr = ... # 对应bin文件中的位置
self.prepare_source() self.prepare_source()
def __repr__(self): def __repr__(self):
return f"[{self.number}] - op: {self._op_str}, dst: {self._dst}, src: {self._src} - '{self.source}'" return f"[{self.number}-{self.code_from_bin_addr}] - op: {self._op_str}, dst: {self._dst}, src: {self._src} - '{self.source}'"
def prepare_source(self): def prepare_source(self):
if self.source.endswith(":"):
self.code_type = self.TYPE_LABLE
self.name = self.source.strip(":")
return
self.code_type = self.TYPE_CODE
tup = self.source.split(",") tup = self.source.split(",")
if len(tup) > 2: if len(tup) > 2:
raise Exception("指令格式错误") raise Exception("指令格式错误")
@ -82,6 +101,9 @@ class Code:
def get_am(self, addr: str): def get_am(self, addr: str):
# 得到目的操作数和源操作数, 返回(寻址方式, 地址) # 得到目的操作数和源操作数, 返回(寻址方式, 地址)
global marks
if addr in marks:
return pin.AM_INS, marks[addr].code_from_bin_addr * 3 # 我们所有的指令都是占了3个字节: ir dst src
if addr is None: if addr is None:
return None, None return None, None
if addr in ALLOW_REGISTER_MAP: # 如果是寄存器寻址, 且必须是允许的寄存器 if addr in ALLOW_REGISTER_MAP: # 如果是寄存器寻址, 且必须是允许的寄存器
@ -138,7 +160,29 @@ def compile_program(input_file: str):
continue continue
code = Code(idx + 1, source) code = Code(idx + 1, source)
codes.append(code) codes.append(code)
return codes
# 保底的
codes.append(Code(idx + 1 + 1, "hlt"))
ret = []
marks = {}
current_code = ...
for code in reversed(codes): # 从后往前
if code.code_type == Code.TYPE_CODE:
current_code = code
ret.insert(0, code)
continue
if code.code_type == Code.TYPE_LABLE:
marks[code.name] = current_code
continue
raise Exception("语法之外的 错误")
# 更新代码在bin中的索引
for idx, code in enumerate(ret):
code.code_from_bin_addr = idx
return ret, marks
if __name__ == '__main__': if __name__ == '__main__':
@ -148,7 +192,8 @@ if __name__ == '__main__':
output_file = "test_mov.bin" output_file = "test_mov.bin"
program_bin_data = [] program_bin_data = []
for code in compile_program(input_file): ret_codes, marks = compile_program(input_file)
for code in ret_codes:
values = code.compile_code() values = code.compile_code()
for value in values: for value in values:
program_bin_data.append(value) program_bin_data.append(value)

@ -1,8 +1,11 @@
from assembly import FETCH, INSTRUCTIONS from assembly import FETCH, INSTRUCTIONS
import assembly as ASM
import pin import pin
META_DATA = "v3.0 hex words addressed\n" META_DATA = "v3.0 hex words addressed\n"
CJMPS = [ASM.JO, ASM.JNO, ASM.JZ, ASM.JNZ, ASM.JP, ASM.JNP]
def chunk(l, n): def chunk(l, n):
for i in range(0, len(l), n): for i in range(0, len(l), n):
yield l[i:i + n] yield l[i:i + n]
@ -76,6 +79,28 @@ def compile_addr2(addr, ir, psw, idx):
return return
def get_condition_jump(EXEC, op, psw):
overflow = psw & 0b001
zero = psw & 0b010
partiy = psw & 0b100
if op == ASM.JO and overflow:
return EXEC
elif op == ASM.JNO and not overflow:
return EXEC
elif op == ASM.JZ and zero:
return EXEC
elif op == ASM.JNZ and not zero:
return EXEC
elif op == ASM.JP and partiy:
return EXEC
elif op == ASM.JNP and not partiy:
return EXEC
else:
return [pin.CYC]
def compile_addr1(addr, ir, psw, idx): def compile_addr1(addr, ir, psw, idx):
# 01xxxx[aa] # 01xxxx[aa]
global base_bin_data global base_bin_data
@ -92,6 +117,12 @@ def compile_addr1(addr, ir, psw, idx):
return return
EXEC = INST[op][amd] EXEC = INST[op][amd]
# 判断是否是条件转移指令, 处在的 bin段
# 如果不是就用cyc填充
if op in CJMPS:
EXEC = get_condition_jump(EXEC, op, psw)
# 当前指令周期 长度塞不下了 # 当前指令周期 长度塞不下了
if idx < len(EXEC): if idx < len(EXEC):
# print(f"{hex(addr)} 写入指令: {bin(EXEC[idx])}") # print(f"{hex(addr)} 写入指令: {bin(EXEC[idx])}")

@ -3855,7 +3855,7 @@
<a name="circuit" val="P_26_2"/> <a name="circuit" val="P_26_2"/>
<a name="circuitnamedboxfixedsize" val="true"/> <a name="circuitnamedboxfixedsize" val="true"/>
<a name="downloadFrequency" val="1.0"/> <a name="downloadFrequency" val="1.0"/>
<a name="simulationFrequency" val="8.0"/> <a name="simulationFrequency" val="32.0"/>
<comp lib="0" loc="(1000,450)" name="Probe"> <comp lib="0" loc="(1000,450)" name="Probe">
<a name="appearance" val="NewPins"/> <a name="appearance" val="NewPins"/>
</comp> </comp>
@ -5103,6 +5103,22 @@
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
@ -5146,40 +5162,20 @@
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 c006 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 c006
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
@ -5222,41 +5218,21 @@
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 c006 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 c006
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
@ -5301,11 +5277,19 @@
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
c006 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
c006 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
@ -5348,12 +5332,20 @@
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 c006 9*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
c006 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
c006 9*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
@ -5401,9 +5393,17 @@
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
@ -5446,10 +5446,18 @@
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 c006 9*40000000
8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040
1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4
8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 8040 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040
1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 1c0c4 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 c006 9*40000000 8040 1c0a4 8040 1c0c4
8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 8040 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040
1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 1c0e4 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4
10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000 10*40000000 8040 1c0a4 8040 1c0c4 8040 1c0e4 10*40000000

@ -1,19 +1,23 @@
v3.0 hex words addressed v3.0 hex words addressed
0000: 84 08 05 84 0b 04 e5 08 0000: 84 0b 00 41 0b 00 b4 0b
0008: 0b 49 08 00 3f 00 00 84 0008: 05 58 0f 00 4c 03 00 45
0010: 08 fd 41 08 00 41 08 00 0010: 0b 00 b4 0b 00 58 03 00
0018: 41 08 00 45 08 00 45 08 0018: 4c 0f 00 3f 00 00 84 08
0020: 00 45 08 00 45 08 00 45 0020: 05 84 0b 04 e5 08 0b 49
0028: 08 00 45 08 00 45 08 00 0028: 08 00 3f 00 00 84 08 fd
0030: 3f 00 00 84 09 05 94 09 0030: 41 08 00 41 08 00 41 08
0038: 03 85 08 09 95 08 09 94 0038: 00 45 08 00 45 08 00 45
0040: 08 fa 84 08 00 84 09 00 0040: 08 00 45 08 00 45 08 00
0048: 95 08 09 84 08 05 84 09 0048: 45 08 00 45 08 00 3f 00
0050: 02 a5 08 09 a4 08 04 84 0050: 00 84 09 05 94 09 03 85
0058: 08 04 84 09 02 a5 08 09 0058: 08 09 95 08 09 94 08 fa
0060: 3f 00 00 88 33 99 86 08 0060: 84 08 00 84 09 00 95 08
0068: 33 89 2f 08 84 08 2f 8b 0068: 09 84 08 05 84 09 02 a5
0070: 00 08 84 08 00 8c 08 05 0070: 08 09 a4 08 04 84 08 04
0078: 84 08 01 8e 08 00 84 09 0078: 84 09 02 a5 08 09 3f 00
0080: 02 84 0b 00 8f 09 0b 3f 0080: 00 88 33 99 86 08 33 89
0088: 00 00 0088: 2f 08 84 08 2f 8b 00 08
0090: 84 08 00 8c 08 05 84 08
0098: 01 8e 08 00 84 09 02 84
00a0: 0b 00 8f 09 0b 3f 00 00
00a8: 3f 00 00

@ -11,8 +11,26 @@
;mov a, 0xff ;mov a, 0xff
;mov [0x0], a ;mov [0x0], a
;逻辑运算 测试
; 转移指令测试
mov d, 0
increase:
inc d
cmp d, 0x5
jz decrease
jmp increase
decrease:
dec d
cmp d, 0x0
jz increase
jmp decrease
end:
hlt
;逻辑运算 测试
;mov a, 5 ;mov a, 5
;mov d, 2 ;mov d, 2
; and a, d ; a:0 ; and a, d ; a:0
@ -25,7 +43,9 @@ not a ; a: 1111_1110
hlt hlt
; 加减法测试
; 加减 1 测试
mov a, 253 mov a, 253
inc a inc a
inc a inc a

Loading…
Cancel
Save