問題タブ [microprocessors]
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 - 32 ビット アーキテクチャで 64 ビット整数のデータ構造を作成するにはどうすればよいですか?
32 ビット アーキテクチャで 64 ビット整数のデータ構造を作成しようとしています。
これを行うための任意のアイデアをいただければ幸いです。
注 : 質問があります。32 ビット Intel プロセッサでコンパイルされた C プログラムは、32 ビット AMD プロセッサで正常に実行されますか?
linux - ソフトウェアの観点から見たスクリーンショットの仕組み
システムの観点からスクリーンショットはどのように機能しますか。いろいろ検索してみたのですが、「スクリーンショットの撮り方」ばかりのサイトばかりでした。
スクリーンショットの操作方法にもっと興味があります。画面のある小さなデバイスを独自に構築し、データが画面に表示されているとします。スクリーンショットをどのように実装しますか (高レベルですが、必要に応じて例がいいでしょう)、私のデバイスで。
編集: 締め切りのリクエストがあったようです。この質問は、非常に具体的なコンテキストがないと答えにくいと思います。おそらく、最終的には時代遅れと見なされるでしょう。そのような質問を投稿する場所に関する推奨事項適切な場所ではありませんか?
assembly - 8085のいずれかのレジスタで「算術演算」をどのようにインクリメントおよびデクリメントすることができますか?
私の知る限り、算術演算と論理演算はアキュムレータの内容で実行され、結果はアキュムレータに格納されます。
それでは、レジスタのいずれかまたはメモリ位置で、どのようにインクリメントおよびデクリメント算術演算を実行できるのでしょうか?
assembly - 反復加算インテル 4004 を使用した乗算
Intel 4004 で 2 つの 4 ビット 2 進数を繰り返し加算する方法を誰か教えてもらえますか?
追加コードは次のとおりです。
FIM R0R1、0x78 ; 初期化: R0=8 R1=7
LD R0 ; R0 をアキュムレータ
ADD R1 にロードします。R1 をアキュムレータ
XCH R1 に追加します。R1 に保存し
ます。プログラムの終わりとしての無限ループ
論理は次のとおりだと思います:乗算は加算を繰り返すことで実行できます。
- データ位置へのメモリ ポインタを初期化します。
- 被乗数をレジスタに移動します。
- 乗数を別のレジスタに移動します。
- アキュムレータをクリアします。
- アキュムレータに被乗数を加算
- 減分乗数
- 乗数がゼロになるまでステップ 5 を繰り返します。
- アキュムレータにある結果は、メモリ位置に格納されます。
命令セットは次のリンクにあります: http://www.e4004.szyc.org/iset.html
理解するのに多くの時間を費やしましたが、理解できません。誰かが助けてくれたら本当にありがたいです。
benchmarking - プロセッサ モデルをベンチマークする方法は?
ベンチマークは、プロセッサのパフォーマンスを詳細にテストするために作成されたプログラムであることを知っています (メモリ操作、MIPS、FLOPS など)。
これらのプログラムのいずれかをダウンロードして (ソース コードとして) 使用できますか? はいの場合、それらの使用方法は?それらはコンパイルして実行するだけですか?それとも、プロファイリングやその他の作業を行う必要がありますか?
ram - Motorola 68k メモリ システム: Ram vs Rom
2 つの 4mb RAM チップと 2 つの 64kb ROM チップの空白を埋める必要があります。やり方がわかりません。それに関するあらゆるタイプの入力が役立ちます。
RAM 1 の場合、終了アドレスは FF FF FF だと思います。しかし、次の開始バイナリ アドレスをどこから開始すればよいかわかりません。
c - CCS で 16 ビット オーバーフローを検出する方法
このスクリプトで数字を追加する必要があります:
32768 でオーバーフローし、その後、16 ビットの制限を超えることができないため、-32768 になります。
int c でオーバーフローをカウントしたい。
ありがとう
linux - Core i7 でハードウェア プリフェッチャーを無効にできない
Core i7 システムでハードウェア プリフェッチャーを無効にしようとすると、エラーが発生します。リンクの方法に従っていますハードウェアのプリフェッチをプログラムで無効にするにはどうすればよいですか?
私のシステムでは
grep -i msr /boot/config-$(uname -r)
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_X86_MSR=y
CONFIG_SCSI_ARCMSR=m
ここに私のエラーメッセージがあります
root@ ./rdmsr 0x1a0
850089
[root@ ./wrmsr -p 0 0x1a0 0x850289 (Core i7 でハードウェア プリフェッチャーを無効にするため)
wrmsr:pwrite: 入出力エラー
Adjacent cache line prefetcherを無効にしても同じエラーが発生します
この問題を解決する方法はありますか? 前もって感謝します 。
assembly - コンパイラを拡張して独自のアセンブリ出力を取得する
独自の命令セットを持つ単純なマイクロプロセッサ シミュレーションを作成するために、いくつかの Verilog コードを書いています。これまでのところ、すべてのコードを頭の中でコンパイルし、16 進エディターを使用して、プログラム メモリの開始として使用できるバイナリ ファイルを生成してきました。現在、いくつかの一般的な言語 (C や BASIC など) を自分の命令セットにコンパイルできるようにする必要があります。独自のコンパイラを作成するのは非常に難しく、時間のかかる作業であるため、何らかの方法で拡張できるコンパイラを探しています。 ■ ソース コードは、異なる命令用に簡単に書き直すことができます。
これを行う方法はありますか?そのようなコンパイラは存在しますか?