|
1: 2004-06-03 (木) 02:13:51 |
| + | * [[tek1]]の続き |
| + | -ここではtek0からのアイデアの連続性について書く |
| | | |
| + | * UC0のアイデア |
| + | -UC0符号は、tek0でのdfの発展型である。 |
| + | --ここで少しおさらいしておくと、dfはd3の発展型であった。つまりd3→df→UC0ということになる。 |
| + | -dfはその名のとおりd3などよりもずっとフレキシブルであり、ファイルごとに適切なパラメータを選択できるところがとてもよかった。これをぜひ他の3つのパラメータ(by、lz、cp)にも応用したいと考えたわけである。 |
| + | -そこでよりいっそうフレキシブルにして、パラメータ次第でL1aやL1bにもなれるような、そんなものに拡張して、それで名前を汎用符号(ユニバーサルコード)のバージョン0ということで、UC0としたわけである。 |
| + | |
| + | -また展開速度の高速化にも配慮した。符号中に分散したストップビット・継続ビットは、デコードの際に取り除いて結合しなければならず、これは大きな負担である。そこでこれらの制御用ビットをざざーと先頭に集めて以下のようにした。 |
| + | 1dd0dd0ddd → ddddddd100 (ビットストリームは右から左へ書いている) |
| + | -なお、ほんの気まぐれで継続・ストップの意味が反転してしまったので、 |
| + | ddddddd011 |
| + | -となっているが、これはもし継続ビット個数を数えるのにASKAのBSFを使うのであれば少々不便であるなと今は少し後悔している。 |
| + | --まあBSFは遅いので使うべきではないし、どうしても使いたければNOTしてからBSFすれば済むことではあるが。 |
| + | --いや、やっぱりフォーマットを変えよう。今しかフォーマットはいじれないわけだし(2004.06.03)。 |
| + | |
| + | * こめんと欄 |
| + | |
| + | #comment |