En la compresión de datos , BCJ , abreviatura de Branch / Call / Jump , se refiere a una técnica que mejora la compresión del código de máquina al reemplazar las direcciones de rama relativas con absolutas. Esto permite que un compresor Lempel-Ziv identifique objetivos duplicados y los codifique de manera más eficiente. En la descompresión, el filtro inverso restaura la codificación original. Se usan diferentes filtros BCJ para diferentes conjuntos de instrucciones , ya que cada uno usa diferentes códigos de operación para la ramificación.
Una forma de chaleco compensador de flotabilidad se ve en Microsoft del gabinete de formato de archivo de 1996, que filtra instrucciones CALL x86 para el LZX compresor. [1] Los formatos de archivo 7z y xz implementan BCJ para múltiples arquitecturas. [2] Las técnicas de actualización delta como bsdiff y courgette también incluyen una forma de BCJ. [3]
Referencias
- ^ "cabextract: Software gratuito para la extracción de archivos contenedores de Microsoft" . Consultado el 17 de marzo de 2020 . CS1 maint: parámetro desalentado ( enlace )
- ^ "El formato de archivo .xz" .
- ^ Colin Percival, diferencias ingenuas de código ejecutable, http://www.daemonology.net/bsdiff/ , 2003.