問題タブ [stack-based]
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.
cpu-registers - レジスタ+スタックベースの仮想マシンはどのように機能しますか?
レジスタベースとスタックベースの仮想マシンがどのように独立して機能するかを知っています。私は両方の長所と短所を知っています。私が知りたいのは、誰かが2つをマージしようとしたことがあるということです。
そのような仮想マシンの存在をネットで検索しようとしましたが、役に立ちませんでした。私が得た最高の結果は、ハイブリッド仮想マシン(HyVM)に関する記事でした。そのような仮想マシンが実際にプログラミング言語用に作成された場合、そのソースコードを見て、その動作を理解することに興味があります。
おそらく、誰かが私を正しい方向に向けてそのような仮想マシンを見つけるか、このトピックで詳しく説明している記事やブログ投稿に私をリンクすることができます。
c++ - スタック クッキー インストルメンテーション コードがスタックベースのバッファ オーバーランを検出 - 修正済み
そのため、画像をピクセル化するために使用されるこのプログラムにはいくつかの問題があります。1 つの問題は、「変数 'pixArray' の周りのスタックが壊れています」というメッセージが表示され、ブレーク後に [続行] をクリックすると、タイトルにエラーが表示されることです。
Pastebin を使用してもよいかどうかはわかりませんが、「短い」投稿のために使用します。
また、通り抜けると、すべてのピクセル化された正方形が、正方形の左側と上部で 1 ピクセル短すぎます。outFile への書き込み時に元のデータを使用しているだけです。なぜこれが起こっているのかを理解しようとすることができれば、ボーナスポイントが得られます.
最後に、プログラムを実行した後、画像の一番右側の四角形でわかるように、平均が正しく平均化されていないようです。
これらの問題のいずれかの助けをいただければ幸いです。前もって感謝します!
編集:コードを並べ替え、使用するセクションをpixArray
コメントアウトし、コメントアウトすると問題を修正するセクションは関数の下部にあり、getAveragesForRGB
編集 2:すべてがスムーズに実行されるようになりました。何らかの理由で誰かがこの正確な問題に遭遇した場合に備えて、ここgetAveragesForRGB
にすべての問題があった新しい場所があります.
java - スタックベースの命令セットは、Java のパフォーマンスに影響を与える最も重要な要因の 1 つですか?
Javaは互換性を高めるためにスタックベースの命令セットを採用していることはわかっていますが、スタック操作はレジスタ操作よりもはるかに遅いため、Javaのパフォーマンスを低下させる重要な要因でしょうか?Javaはレジスタを使用して高速化することもあることを知りました。実行速度ですが、Javaがいつどのようにレジスタを利用するのかわかりません。ありがとうございました!
multithreading - Forth はマルチスレッドをサポートしていますか?
しばらくの間、Forth プログラミング言語について簡単に調べました。Forth で同期プリミティブを使用してマルチスレッドを実行することは可能ですか?
たとえば、Forth で複数のスレッドを使用して n 行 n 列の行列乗算を行うことは可能ですか? もしそうなら、基本的なメカニズム、またはプログラミングパターンは何ですか?
c++ - スタックベースのバッファ オーバーラン
コードを実行すると、次のエラーが表示されます。
GameLauncher.exe の 0x00BA16A0 で未処理の例外: スタック Cookie インストルメンテーション コードがスタックベースのバッファー オーバーランを検出しました。
何が原因なのかわかりません。次のコードで発生します。
.net - .NET MSIL:コマンドはオペランドのサイズをどのように検出しますか?
add
MSIL には、2 つの引数 (スタックからのポップ、追加、スタックへのプッシュ) を追加する1 つのコマンドがあります。2 バイトまたは 4 バイトまたは 8 バイトをポップする必要があるかどうかをどのように判断しますか?
Java ではさまざまなバイトコード (fadd、dadd、iadd など) がありますが、.NET でこれをどのように処理しますか?
bitcoin - スタックベース言語からの高級言語
スタックベースの (Forth に似た) 言語から高レベル (Java に似た) 言語を構築する方法に興味があります。誰か文学、できれば本を推薦できますか?
役立つ場合: このアプリケーションは、ビットコインのスクリプトから高水準言語を構築したものです。
language-agnostic - スタックベースの言語: レジスタの長所と短所?
私は現在、コード ゴルフ ( International Phonetic Esoteric Language/IPEL ) 用の難解なスタック ベースのプログラミング言語を設計しています。現在の仕様では、ユーザーが変更できる値のスタックがあります。
ただし、いくつかの簡単な課題を試した後 (さらに手続き型および OOP のバックグラウンドから来ている)、ユーザーが使用する単一のレジスタとそれに関連する命令 (stack → reg、reg → stack など) を追加することを検討しています。(これはバージョン -1 言語仕様にありましたが、純粋なスタック操作を優先して廃止することにしました。)
スタックベースの言語でユーザーが変更可能なレジスタを持つことの長所と短所は何ですか?