Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IT отчет лаба 3.docx
Скачиваний:
21
Добавлен:
20.03.2016
Размер:
3.05 Mб
Скачать

3. Составляем частотную таблицу

символов

4. Создаем дерево Хаффмана, относительно этого дерева выстраиваем кодовую таблицу.

Символ

Код

о

101

т

1111

е

1101

и

1100

а

1001

м

0101

н

0010

л

0001

к

11100

с

10001

г

01110

у

01111

,

01101

р

01100

д

01001

в

00111

б

111011

з

111010

ь

000010

я

100001

п

010001

ч

010000

ж

001100

й

000001

ы

000000

.

1000001

ф

00110101

х

00110100

ц

00110111

щ

00110110

э

10000001

;

10000000



Итоговая таблица на основе моей частотной таблицы

Символ

Частота

размер(бит)

ASCII

размер(бит)

UTF - 8

Код

размер(бит)

итоговый

о

35

280

560

101

105

т

25

200

400

1111

100

е

22

176

352

1101

88

и

22

176

352

1100

88

а

21

168

336

1001

84

м

16

128

256

0101

64

н

13

104

208

0010

52

л

12

96

192

0001

48

к

11

88

176

11100

55

с

10

80

160

10001

50

г

9

72

144

01110

45

у

9

72

144

01111

45

,

9

72

72

01101

45

р

8

64

128

01100

40

д

8

64

128

01001

40

в

7

56

112

00111

35

б

6

48

96

111011

36

з

6

48

96

111010

36

ь

6

48

96

000010

36

я

5

40

80

100001

30

п

4

32

64

010001

24

ч

4

32

64

010000

24

ж

3

24

48

001100

18

й

3

24

48

000001

18

ы

3

24

48

000000

18

.

3

24

24

1000001

21

ф

1

8

16

00110101

8

х

1

8

16

00110100

8

ц

1

8

16

00110111

8

щ

1

8

16

00110110

8

э

1

8

16

10000001

8

;

1

8

8

10000000

8

Общий размер до сжатия (в ASCII): 2288 бит

Общий размер до сжатия (в UTF - 8): 4472 + 24 (BOM) = 4496 бит

Общий размер после сжатия (в ASCII): 1293 бит

Общий размер после сжатия (в UTF - 8): 1293 + 24 (BOM) = 1317 бит

Коэффициент сжатия из ASCII

Коэффициент сжатия из UTF - 8

1.769

3.414

5. Проделываем тоже самое, только на основе известной частотной таблицы букв русского языка http://dict.ruslang.ru/freq.php?act=show&dic=freq_letters&title=%D7%E0%F1%F2%EE%F2%ED%EE%F1%F2%FC%20%E1%F3%EA%E2%20%F0%F3%F1%F1%EA%EE%E3%EE%20%E0%EB%F4%E0%E2%E8%F2%E0)

Сортируем по рангу (см. общую таблицу ниже) и задаем условную частоту, на основе условной частоты создаем дерево Хаффмана:

таблица на основе известной частотной таблицы букв русского языка

Символ

(по частоте)

Частота

Ранг

Размер (бит) итоговый

Символ

(по рангу)

Условная частота

Кодовая таблица

1

о

35

1

140

о

32

1001

2

т

25

6

100

е

31

1000

3

е

22

2

88

а

30

0111

4

и

22

4

88

и

29

0101

5

а

21

3

84

н

28

0100

6

м

16

12

80

т

27

0011

7

н

13

5

52

с

26

0001

8

л

12

10

60

р

25

0000

9

к

11

11

55

в

24

11111

10

с

10

7

40

л

23

11101

11

г

9

19

45

к

22

11100

12

у

9

15

45

м

21

11011

13

,

9

,

72

д

20

11001

14

р

8

8

32

п

19

11000

15

д

8

13

40

у

18

10111

16

в

7

9

35

я

17

10101

17

б

6

21

36

ы

16

10100

18

з

6

20

30

ь

15

01101

19

ь

6

18

30

г

14

00101

20

я

5

16

25

з

13

00100

21

п

4

14

20

б

12

111101

22

ч

4

22

24

ч

11

110101

23

ж

3

25

18

й

10

110100

24

й

3

23

18

х

9

101101

25

ы

3

17

15

ж

8

011001

26

.

3

.

27

ц

7

011000

27

ф

1

31

7

щ

6

1111001

28

х

1

24

6

э

5

1011001

29

ц

1

28

6

ф

4

1011000

30

щ

1

29

7

,

3

11110001

31

э

1

30

7

.

2

111100001

32

;

1

;

9

;

1

111100000


Общий размер до сжатия (в ASCII): 2288 бит

Общий размер до сжатия (в UTF - 8): 4472 + 24 (BOM) = 4496 бит

Общий размер после сжатия (в ASCII): 1341 бит

Общий размер после сжатия (в UTF – 8): 1341 + 24 (BOM) = 1365 бит

Коэффициент сжатия из ASCII

1.706

Коэффициент сжатия из UTF - 8

3.294

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]