2021-02-01から1ヶ月間の記事一覧
はじめに 皆さんはArm命令の末尾にsがついた命令を見たことがあるだろうか。見たことはあっても、通常の命令と何が違うのかイマイチ分からない、という方も多いかもしれない。今回はこのsがどのような意味を持つのか詳しく見てみよう。 sの意味 末尾にsを付…
はじめに ArmをはじめとするRISCプロセッサは固定長命令であるため、32bitの即値をそのまま使用することはできない。Armの命令では、下位8bitが即値に割り当てられることが多い。 「それだと8bitサイズの即値しか使えないじゃないか!!」そう思った方がいる…
Microsoft x64 引数 型 第1 第2 第3 第4 整数・ポインタ RCX RDX R8 R9 浮動小数点 XMM0 XMM1 XMM2 XMM3 レジスタだけでは引数が不足する場合、スタックを使用する。 戻り値 整数型・ポインタ型はRAXを、浮動小数点型はXMM0を使用して返される。 System …
はじめに リポジトリをフォークした後、フォーク元のリポジトリが更新された場合に同期する方法を紹介。 方法 ①フォーク元のリポジトリをupstreamという名前で追加する。 git remote add upstream (元のリポジトリのURL) ②フォーク元のリポジトリが追加され…
はじめに Thumb命令とは、ARMプロセッサに組み込まれている16bit長の命令である。命令に制限はあるものの、ARM命令の半分の長さで実行できるため、ARM命令と組み合わせることで効率のよいコードを作成することができる。 Thumb関数の書き方 .thumb .thumb_fu…