cpu-registers

    2

    1答えて

    最新のARMv7 32ビットで、ある範囲の浮動小数点レジスタをスタックにプッシュ(ポップ)する方法はありますか?特に、スクラッチ(揮発性)浮動小数点レジスタd0〜d7(またはプロセッサ内の同じ領域を占めていると仮定してs0〜s15)を保存して復元することに興味があります。 http://www.cl.cam.ac.uk/~fms27/teaching/2001-02/arm-project/02-

    2

    1答えて

    Qt Creatorを使用して、STM32のベアメタル構成を使用する組み込みアプリケーションを開発しています。 KIEL uVision、IAR System Workbench、Eclipse IDEなど、さまざまなIDEの下でこのアプリケーションをデバッグすると、ツリーリストにプロセッサ固有のレジスタが見える特別なビューがあります。 Qt Creatorに類似したものはありますか? 私はデバッ

    2

    1答えて

    Raspberry Piでパフォーマンス測定を行い、clock_gettime()より高い解像度を望みます。 そのため、CPUレジスタPMUSERENRを有効にする必要があります。 私のRaspberry Piの/ proc/cpuinfoによれば、「ARMv7 Processor Rev 5(v7l)」があります。だから私は、アーキテクチャリファレンスマニュアルをダウンロードし、私が使用する必要

    13

    2答えて

    通常、CPUレジスタを最大限に使用する方が良いでしょう。 可搬性のあるコードでは、64ビットCPU上で64ビットの算術演算と記憶装置を使用し、32ビットCPUでは32ビットのみを使用することを意味します(そうでなければ、64ビット命令は32ビットモードでエミュレートされ、荒々しい公演で)。 つまり、通常はコンパイル時に(ランタイムテストが高価なので)CPUレジスタのサイズを検出する必要があります。

    2

    1答えて

    gdbの$ pcレジスタはx86 32ビットプロセッサのeipレジスタと異なっていますか? $ pcのようにgdbには4つの標準レジスタがあります。したがって、異なる名前の同じレジスタの場合、マッピングはどのように行われますか?他の3つのレジスタについて

    2

    1答えて

    私は "ファイバー"と呼ばれるものを実行するためにスケジューラーを作成しようとしています。 残念ながら、私は実際にインラインアセンブリを書くことに慣れていません。 typedef struct { //fiber's stack long rsp; long rbp; //next fiber in ready list struct fiber

    3

    2答えて

    私は現在Assemblyを学んでおり、CPUレジスタがどのようにマルチタスクで動作するのか混乱しています。したがって、マルチタスキングシステム。 CPUはいつでも特定のプログラムの実行を一時停止し、別のプログラムを実行することができます。では、このステップでレジスタ値はどのように保持されますか?レジスタがスタックされているのですか?

    2

    1答えて

    IntelプロセッサD(以前はBroadwellプロセッサと呼ばれていました)は、cache allocation technologyの多くのCOSレジスタをサポートできます。だから、Intel CPUに16個のCOSレジスタを持つコンピュータを購入したいと思っています。 Intel's manualによれば、CPUID.(EAX=10H, ECX=ResID=1)命令の出力としてEDXレジスタ

    0

    1答えて

    私はx86アセンブリのレジスタを理解するのに苦労していますが、EAXは完全な32ビット、AXは下位16ビット、そしてAHとALはAXの上位8ビットです。質問。 AL = 10、AH = 10の場合AXの値は何ですか? 私はこれを10をバイナリ(1010)に変換し、それをAX(0000 1010 0000 1010)の上位と下位ビットとして取り、これを10進数(2570)に変換します。ここで正しい答

    6

    2答えて

    アセンブリで、画面上に正方形を描画するサブプログラムを作成しようとしています。私はC++で行うのと同じように、サブプログラムにパラメータを渡すことはできないと思うので、スタックを使用してパラメータを格納してアクセスすることができました(共通データレジスタを使用できません。パス)。 問題は、現在の「プログラム」のアドレスにcallコマンドを使用するとスタックに保存されるため、「ret」コマンドを使用