⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bitter.1

📁 GSM音频编解码程序.rar
💻 1
字号:
.\"
.\" Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
.\" Universitaet Berlin.  See the accompanying file "COPYRIGHT" for
.\" details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
.\"
.PU
.TH BITTER 1 
.SH NAME
bitter, sweet \(em code-generators for packing bits
.SH SYNOPSIS
bitter < input > output
.br
sweet < input > output
.SH "DESCRIPTION"
Bitter and sweet are two filters which turn a description of the
form 
.nf
	name	number-of-bits
	name 	number-of-bits
	...
.nf
into code.
.PP
Bitter generates code that packs the specified bits from their
variables into an array of unsigned char referenced by an
advancing pointer c.
.PP
Sweet generates code that unpacks the specified bits from an array
of unsigned char referenced by a mutable pointer c into the
named variables.
.\" .SH OPTIONS
.\" .SH "RETURN VALUE"
.\" .SH ERRORS
.SH EXAMPLES
.nf
% cat in
amaretto 1
banana 2
cherry 3
strawberry 4
vanilla 15
walnut 15

% bitter < in
	*c++ =   ((amaretto & 0x1) << 7)
	       | ((banana & 0x3) << 5)
	       | ((cherry & 0x7) << 2)
	       | ((strawberry >> 2) & 0x3);
	*c++ =   ((strawberry & 0x3) << 6)
	       | ((vanilla >> 9) & 0x3F);
	*c++ =   ((vanilla >> 1) & 0xFF);
	*c++ =   ((vanilla & 0x1) << 7)
	       | ((walnut >> 8) & 0x7F);
	*c++ =   walnut & 0xFF;

% sweet < in
	amaretto  = (*c >> 7) & 0x1;
	banana  = (*c >> 5) & 0x3;
	cherry  = (*c >> 2) & 0x7;
	strawberry  = (*c++ & 0x3) << 2;
	strawberry |= (*c >> 6) & 0x3;
	vanilla  = (*c++ & 0x3F) << 9;
	vanilla |= (*c++ & 0xFF) << 1;
	vanilla |= (*c >> 7) & 0x1;
	walnut  = (*c++ & 0x7F) << 8;
	walnut |= *c++;
.SH NOTES
This is a quick hack for the gsm_encode() and gsm_decode() routines.
.SH BUGS
Please direct bug reports to jutta@cs.tu-berlin.de and cabo@cs.tu-berlin.de.

⌨️ 快捷键说明

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