問題タブ [16-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.
assembly - 16 ビット アセンブリ コードの OFFSET とはどういう意味ですか?
16 ビット リアル モードのアセンブリ コードの例をいくつか見ていきます。
私は次の行に出くわしました:
これは何をしているのですか?そこに「オフセット」があることは何をしますか?
sql-server - 64ビットマシンでのQuestGeoSolutionsGIQ60ライブラリの使用
SQL Server Integration Services(SSIS)パッケージ内でQuestGeoSolutionのGridInQuestDLL(GIQ60.DLL)を使用しています。tlbimpを使用して.NETラッパー(相互運用機能)を作成することにより、これをローカル(32ビット)で問題なく使用することができました。ただし、これを統合サーバーに移動すると、サーバーが64ビットであるため、これは機能しません。
GIQ60.DLLは16ビットDLLであり、ベンダーはこれを積極的にサポートしていないことを確認しています。サーバー上で32ビットバージョンのDTEXECを実行すると、パッケージは問題なく実行されます。.NETラッパーを変換してSQLServerIntegration Services(64ビットインストール)を機能させるためのトリック/方法はありますか?
または、OSグリッド(東/北)を英国とアイルランドの両方の地理空間経度/緯度に変換する(異なるグリッドシステムを使用する)交換用の無料の32ビット.netライブラリが必要です。これは、実行可能なソリューションになります。
c# - 2つのSystem.Drawing.Color構造が16ビットの色深度で同じ色を表しているかどうかを確認するにはどうすればよいですか?
2つのSystem.Drawing.Color構造が16ビットの色深度で(または通常はScreen.PrimaryScreen.BitsPerPixelの値に基づいて)同じ色を表すかどうかを確認するにはどうすればよいですか?
Form.TransparencyKeyを(Colorタイプの)Value1に設定したとしましょう。ユーザーがフォーム(Value2)に新しい背景色を選択したときに、フォーム全体を透明に設定しないことを確認したいと思います。
32ビット色深度画面では、2つの値を単純に比較します。
if(Value1 == Value2)
ただし、これは16ビットの色深度画面では機能しません。Value2の色の値が多いほど、Value1と同じ実際の16ビットの色を表すためです。
.net - .net x64 で 16 ビット イメージを保存/ロードするにはどうすればよいですか?
以前、win32 を使用していたときは、ビット深度が 8 ビットを超えるビットマップを読み込んで保存するためにFreeImageを使用していました。私は医用画像処理を行っているので、これが私が扱うすべての画像です。誰かが何かを言う前に、私と私の顧客は、11 ビットまたは 12 ビットのダイナミック レンジを備えた高輝度、高コントラストのモニターに多額の費用を費やしてきました。 . 実際、興味がある方のために説明すると、マンモグラフィを実行するための ACR の要件には、少なくとも 10 ビットのダイナミック レンジを備えたモニターが含まれています。
メモリのオーバーヘッドと、すべての開発を 1 つのプラットフォームとコンパイル モードで行うために、x64 に切り替えました。私は win32 に戻りたくありません。私の顧客は私と一緒にいます (実際に変更を強制しています)。FreeImage は 64 ビット Windows ではコンパイルできません。コンパイラが処理できないコードに _asm ディレクティブがあります。
Microsoft クラスでネイティブ .NET サポートを試してみようと思いました。簡単に言うと、それらは機能せず、非常に限られたエラー メッセージで失敗します。Microsoft がまだ Format16bppGrayScale クラスをサポートしていないためだと思います。
私のコードに問題があるのかもしれません。書くための私のコードは次のとおりです。
このコードは、プログラムをクラッシュさせます
特に、この画像をこのように画面に描画したくないので (それはいいことですが!)、保存/読み込み機能を使用したいだけなので、興味深いです。イメージは (プログラムがクラッシュしても) ディスクに書き込まれ、次の読み取りコードもプログラムをクラッシュさせます。
このコードは、次のエラーでプログラムをクラッシュさせます。
これらの結果は、Microsoft がまだ PixelFormat 列挙の Format16bppGrayScale 部分を修正していないことを示しています。残念です。
では、.NET を使用して x64 で 16 ビット グレースケール イメージを読み込んで保存するには、何を使用すればよいでしょうか?
(編集: DICOM 画像を保存することはできますが、患者以外のデータで実験を実行して、アルゴリズムが健全であることなどを確認する必要があることを付け加えておきます。DICOM には、一連の UID とその他の必要なフィールドが必要です。私が必要としているのは、現時点では患者のデータではなく、画像だけです)。
php - PHPで16ビットの色深度のpngをサポートするオンザフライPDF作成
アプリケーションでオンザフライで PDF ドキュメントを作成しようとしています。つまり、ユーザーがリンクをクリックすると、テキストと画像を含む PDF ドキュメントが表示されます。
私は現在、24 ビット (トゥルー カラー) の png をサポートする FPDF v1.6 ( http://www.fpdf.org/ ) を使用していますが、問題は、これがレガシー アプリケーションであり、16 ビットの png が 1000 個あることです。 FPDF がサポートしていない色深度と、これらの画像を使用するアプリケーションの他の部分のために単純に変換できません。
私が見る唯一の解決策は次のとおりです。
- その場で16ビットpng画像を変換し、それをpdfに埋め込みます。
- 16 ビットの色深度の png を受け入れる新しいクラス pdf クラスを見つけます。
誰にもアイデアはありますか?
java - 16 ビット データの双一次補間での Java エラー
16 ビット データの双一次補間を使用すると問題が発生します。origImage と displayImage の 2 つの画像があります。AffineTransformOp を使用して、AffineTransform を介して origImage を表示領域のサイズである displayImage にフィルター処理したいと考えています。origImage は BufferedImage.TYPE_USHORT_GRAY タイプで、sun.awt.image.ShortInterleavedRaster タイプのラスターを持っています。ここに私が今持っているコードがあります
エラーを表示するために、2 つのグラデーション イメージを作成しました。1 つは 15 ビット範囲 (最大 32767) の値を持ち、もう 1 つは 16 ビット範囲 (最大 65535) の値を持ちます。以下は2つの画像です
15 ビット イメージ
16 ビット イメージ
これらの 2 つのイメージは同じ方法で作成されており、同じように見えるはずですが、16 ビット イメージの中央を横切る線に注目してください。最初はこれはオーバーフローの問題だと思っていましたが、ピクセル値が高い端ではなく、グラデーションの中心に現れているのは奇妙です。また、オーバーフローの問題であった場合、15 ビット イメージも同様に影響を受けたと思われます。
これに関するヘルプは大歓迎です。
なぜ誰も答えないのだろうと思っていたのですが、十分な情報を提供しましたか? さらに情報が必要ですか?
以下は、AffineTransform を生成するために使用するコードです。参照されるすべての変数は、ユーザー入力 (マウスの動き) に基づいて計算され、正しいはずです (私を含む多くの人々によってテストされています)。これがエラーの解決に役立つことを願っています。
ここで何が起こっているのかまだわかりません。提供できるヘルプがあれば、本当に感謝しています。また、参照用に実際の画像で発生したバグの例を添付しました。
これは、手のX線で発生しているバグです
これは、親指と人差し指の間の領域に焦点を当てた拡大バージョンです。
極端に白い領域ではバグが発生せず、グラデーション イメージのようにダイナミック レンジの中間の値で発生することに注意してください。
より多くの情報を発見しました。いくつかの変換を調整していたところ、恒等行列をフィルター処理するだけではバグが発生しないことがわかりました。また、整数で換算しても発生しません。整数以外の量で翻訳すると発生します。1 以外の量 (整数かどうか) でズームした場合にも発生します。うまくいけば、これが役に立ちます。
さらに実験を重ねた結果、バグは最大強度の半分 (65535/2 = 32767.5) の間の境界ピクセルで明らかに現れました。また、この値でのみ発生します。これが診断に役立つことを願っています!!
AlBlue の要請により、バグを生成する可能性がある私のアプリケーションとは完全に独立したコードがここにあります。元の投稿では、以下のコードで生成された画像グラデーションを含めましたが、効果をよりよく示すためにグラデーションの 1 つにズームインしたことに注意してください。0.5 変換された画像で効果が 4 回表示され、他の 2 つの画像では表示されません。また、このバグは、1 以外の量でスケーリングしているときに発生することにも注意してください。AffineTransform.getTranslateInstance() を AffineTransform.getScaleInstance(0.9, 0.9) に置き換えるだけで、バグも確認できます。
別の更新として、Fedora 10 でこれを試したところ、バグがまだ存在することがわかりました。
assembly - プロセッサを 32 ビット モードに設定する
以下は、プロセッサを 16 ビットから 32 ビットに切り替える際の多くのチュートリアルで提供されている一般的な方法のようです。
単純に次のことをしないのはなぜですか。
足りないものはありますか?おそらく、私が考えることができる唯一のことは、cr0 レジスタでこのような操作を実行できないということです。
assembly - 80x86 16ビットasm:lea cx、[cx * 8 + cx]はNASMでエラーを引き起こします(.comファイルのコンパイル)
NASMが(私の動作中のOSにもかかわらず)与えるエラーは「無効な実効アドレス」です。
今、私はLEAの使い方の例をたくさん見てきました。私はそれを正しく理解したと思いますが、それでも私のNASMはそれを嫌っています。試しlea cx, [cx+9]
てみましたが、うまくいきました。lea cx, [bx+cx]
しませんでした。
ここで、レジスタを32ビット(つまりlea ecx, [ecx*8+ecx]
)に拡張すると、すべてがうまくいくでしょうが、16ビットと8ビットのレジスタのみを使用するように制限されています。
ここに、私のアセンブラが、私が想定していた方法でleaを使用させない理由を説明できる知識のある人はいますか?
string - 16 ビット OS のビルド - 文字配列が機能しない
私は16ビットのオペレーティングシステムを構築しています。しかし、文字配列は機能していないようです。
これが私のカーネルコードの例です:
それは印刷します:
これは putchar 関数が正常に動作していることを意味しますが、
動かない。
私はそれをコンパイルしています:
私は何をすべきか?
assembly - MOV BX、[SI] - ASM に関する質問
私は高校で理論的に ASM 8086 を勉強しています。
これを行うと、
MOV BX,[SI]
SI+1 は BH または BL になりますか?
ありがとうございました :-)