MIPS code compression

Abstract

MIPS machine code is very structured: registers used before are likely to be used again, some instructions and registers are used more heavily than others, some instructions often follow each other and so on. Standard file compression utilities, such as gzip and bzip2, does not take full advantage of the structure because they work on byte-boundaries and don't see the underlying instruction fields. My idea is to filter opcodes, registers and immediates from MIPS binary code into distinct streams and compress them individually to achieve better compression ratios. Several different ways to split MIPS code into streams are considered. The results presented in this paper shows that a simple filter can reduce final compressed size by up to 10 % with gzip and bzip2.

0

Turn this paper into a lesson

ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…