initialize_arithmetic_decoder.m

来自「压缩包中的内容用matlab语言对算术码进行描述」· M 代码 · 共 28 行

M
28
字号
function [input_bits] = initialize_arithmetic_decoder
global Code Low High
global K

K = 16;
Low = 0;
High = 2^K-1;

Code = 0;
input_bits=0;
for (i=1:K)
    Code = Code*2;
    Code = Code + InputBit;   % read bits into code
    input_bits = input_bits + 1;
end
return

function [bit] = InputBit
global in_bit_file
if ( in_bit_file.mask == 8 )
    [in_bit_file.rack,count] = fread(in_bit_file.file, 1, 'uint8' );
end
bit = bitget(in_bit_file.rack, in_bit_file.mask);
in_bit_file.mask = in_bit_file.mask - 1;
if ( in_bit_file.mask == 0 )
    in_bit_file.mask = 8;
end
return

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?