問題タブ [bit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - ファイル形式の整数型
私は現在、ファイル形式についてさらに詳しく学ぼうとしています。
3Dファイル形式(この場合はU3D)の仕様があり、それを実装してみたいと思います。学習効果のためだけに、深刻なことは何もありません。
私の問題は、定義する必要のあるタイプから非常に早く始まります。さまざまな整数(8ビット、16ビット、32ビットの符号なしおよび符号付き)を定義する必要があり、ファイルに書き込む前にこれらを16進数に変換する必要があります。
I16 ieを作成することはできないので、これらのタイプをどのように定義しますか?私にとってのもう1つの問題は、そのI16を8桁の16進数(つまり0001 0001)に変換する方法です。
java - Javaでバイトを長さ4のブール配列に変換します
Javaで1バイトを4ブール値の配列に変換する必要があります。どうすればこれを行うことができますか?
perl - Perl パック/アンパック/シフト
私はここ数日間、Perl でこの問題を抱えていました。数え切れないほどの man ページ、perldocs、およびあまりにも多くの検索用語をグーグル検索した後、ここの誰かが私を助けてくれることを願っています.
Perl の 16 進数 0xFFFF ではなく、16 進数の値、つまり「FFFF」を表す 2 つの文字列が与えられます。これらの文字列のうち 2 つが与えられた場合、それらをバイナリ形式に変換し、2 つのビットごとの AND を実行してから、この出力を取得し、LSB から MSB までの各ビットを調べます。
現在、2 つの問題があります。16 進文字列を 16 進数に変換し、ビットごとの AND の結果をシフトします。
16 進文字列を 16 進数に変換するために、次のアプローチを試しましたが、それらを印刷して調べたときに機能しないようです。
「print」を使用してこれらのそれぞれを調べても、正しい値が表示されず、「sprintf」を使用しても表示されません...
2 番目の問題は、ビットごとの AND を実行した後に発生し、右に 1 シフトして各ビットを調べたいと考えています。前の問題を回避するために、16 進文字列の代わりに実際の Perl 16 進数を使用しました ("ffff" ではなく 0xffff)。 . 次のように右シフトを実行しようとすると:
この時点ですべて問題ないように見えます。「print」を使用すると、AND 演算の値が正しく見えることがわかりますが、次のようにシフトしようとすると、次のようになります。
得られた結果の値はバイナリ形式ですが、正しくありません。
この種の操作を実行する正しい方法は何ですか?
c++ - 手書きのビット操作コードを使用する代わりにビットセットを使用しますか?
手書きの場所でビットセットを使用すると、パフォーマンスの低下/向上はありますか?
実行時にビットセットを使用して以下をビルドする方法
- 2 から 5 までのすべてのビットをゼロにし
11110011
ます。
c# - c#のブール値のバイナリ表現は何ですか?
ブール値が 1 バイト (8 ビット長) であることは知っていますが、そのバイナリ表現が何であるかを知りたいです。例: 10 進数 => 2 進数 4 => 100 (0000 0100) 8 => 1000 (0000 1000) ブール値 => ???
sql - デフォルト値で null 許容ビットを選択する
ビューで null 許容ビット列を選択する必要がありますが、値が NULL の場合は常に既定値の FALSE を使用します。(他の理由で、ソース テーブル自体に既定値を追加することはできません。) これが私がやっていることです。
これを 4 つの列で行う必要があるため、これを行うためのより良い/より効率的な方法があるかどうか疑問に思っています。
c++ - ファイルの入出力用にビットを巨大なchar配列に格納する方法
たくさんの情報をビット単位でブロックして保存し、ファイルに保存したいと思います。
ファイルをそれほど大きくしないために、intの代わりに少数のビットを使用して指定された情報を保存したいと思います。
たとえば、Day、Hour、Minuteをファイルに保存したいとします。
データストレージ用に5ビット(日)+ 5ビット(時間)+ 6ビット(分)=16ビットのメモリのみが必要です。
それをブロックに保存してファイルに入れる効率的な方法が見つかりません。
私の懸念にはいくつかの大きな問題があります:
毎回保存したいデータ長は一定ではありません。それは入ってくる情報に依存します。そのため、構造を使用して格納することはできません。
ブロックに未使用のビットがあってはなりません。int(4バイト変数)に30ビットを格納すると、保存した次の3ビットが自動的に次のintに入るというトピックを検索しました。でもそんなことはしたくない!!
右シフト、左シフトを使用して文字に数値を入れ、文字をブロックに入れることができることは知っていますが、非効率的です。
指定されたビットを引き続き入れ、writeを使用してファイルに入れることができるchar配列が必要です。
java - Java のビットの合計
すみません友達私は間違いをしました。私はまたこの過ちを犯してしまいました。本当に申し訳ありません。
これがイシューです。
私は次のような時間範囲を持っています
ビットの合計で時間が欲しい、例
そして23時まで
だから私は totalRange = 256+128+64+32+16+8+4 が必要です。
このようになるはずです。
ありがとう
mysql - MySQLのBIT(1)とENUM('unknown'、'male'、'female')
パフォーマンスの観点から、何が速くなりますか、BIT(1) NULL
(null =不明、0 =男性、1 =女性)またはMySQL MyISAMENUM('unknown', 'male', 'female') NOT NULL DEFAULT 'unknown'
を使用しますか?
または、これはマイクロ最適化と見なされますか?
[編集]
使うつもりだと思いますENUM('male', 'female') DEFAULT NULL
mysql - MySQL: Example of where to use the BIT Data Type
If I understand correctly, the pre MySQL 5.0.3 interpretation of the BIT data type meant it could be used as a series of flags? If this is the case I can see practical uses for it in MySQL but imagine it would not have been as efficient as using SET.
Even if the above is not the case, I have great difficulty in understanding how the current implementation of the BIT data type can be practically applied in a database. If anyone is able to provide a simplified explanation and, an example of where it would be applicable, I would be grateful.
I have searched for descriptions and examples elsewhere but have been unsuccessful in finding examples applicable solely to databases.