エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
64bit版RISC-Vで即値を生成するときの罠 - よーる
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
64bit版RISC-Vで即値を生成するときの罠 - よーる
RISC系の命令セットでは、一命令でレジスタに書き込める即値と、一命令では書き込めない即値が存在する... RISC系の命令セットでは、一命令でレジスタに書き込める即値と、一命令では書き込めない即値が存在する設計になっています。 一命令では書き込めない即値の場合、二命令以上かけて即値を生成することになるわけですが、そこに存在する罠に引っかかった記録です。 なんでそんな仕組みになっているのか RISC系の命令セットでは、一命令の長さを固定(ほとんどの場合、4Byte)にすることが基本です。 レジスタ幅が32bit(=4Byte)だとすると、一命令32bitの中に32bit分の即値を埋め込むことは明らかに不可能です。 一命令の長さをもっと長く、例えば8Byteにすれば入るじゃないか、という感じですが、そうするとプログラムのサイズがほぼ二倍に増えてしまい、受け入れがたいという設計方針のようです。 一命令の長さを可変にすればいいじゃないか、というのはプロセッサの設計が複雑化するため、やはり受け入れがたい