我试图在MIPS中为位图编写RLE代码。我在阅读文件本身后才发现文件大小这一事实存在问题,而我似乎无法弄清楚如何从文件中间读取文件,以使其递归。
例如:我发现文件有来自文件头的X字节,我知道它有54个字节。但后来我想跳转前1078个字节并逐字读取(4个字节,32位),或者至少能够创建变量.space以将文件放入内存中。
li $v0, 14 # read from file
move $a0, $s0 # fd of file to be compressed
la $a1, header
li $a2, 54
syscall
bne $v0, 54, Erro2 # Test
lw $s2, header+2 #size of file in bytes
lw $s3, header+10 #offset of pixel array
我需要的是能够读取像素阵列来压缩它。但我可以弄清楚文件描述符是如何工作的,如果它可以移动它的指针,或者至少在que .text已经启动之后创建一个.data。
我使用的是MARS4_5