C++输出16进制数和整行读取文件

蛋疼的计组实验,8086汇编语言,找出8086/8088指令系统所有指令的操作码的编码,没学会,就去搞了点副业,复习了下C++文件操作。

实验要求生成一个in.txt文件,然后用debugout.txt命令将指令码输出到out.txt中。
in.txt内容示例如下,要输入512行,手动的话直接累死掉了,所以编程了。
e 100 00
u 100 101
e 100 01
u 100 101
e 100 02
u 100 101
e 100 03
u 100 101
e 100 04
u 100 101

用c++生成in.txt

debugout.txt后,生成的out.txt文件示例如下:

-e 100 00

-u 100 101

0B3E:0100 0000 ADD [BX+SI],AL
-e 100 01

-u 100 101

0B3E:0100 0100 ADD [BX+SI],AX
-e 100 02

只想要指令部分,所以又得动用c++了:

把需要的部分复制到新文件中,如下:

0B3E:0100 0000 ADD [BX+SI],AL
0B3E:0100 0100 ADD [BX+SI],AX
0B3E:0100 0200 ADD AL,[BX+SI]
0B3E:0100 0300 ADD AX,[BX+SI]
0B3E:0100 0400 ADD AL,00
0B3E:0100 050000 ADD AX,0000
0B3E:0100 06 PUSH ES
0B3E:0100 07 POP ES
0B3E:0100 0800 OR [BX+SI],AL
0B3E:0100 0900 OR [BX+SI],AX
0B3E:0100 0A00 OR AL,[BX+SI]
0B3E:0100 0B00 OR AX,[BX+SI]
0B3E:0100 0C00 OR AL,00
0B3E:0100 0D0000 OR AX,0000
0B3E:0100 0E PUSH CS

生成文件倒是好看了,可是看不懂啊,头大!

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注