IA-32をサポートするため、Itaniumは特殊なジャンプ命令で32ビットモードに移行する。IA-32命令はItaniumの各機能ユニットで実行される。しかし、ItaniumはEPICスタイルの命令を高速に実行するよう設計されているため、アウト・オブ・オーダー実行機能を持っておらず、IA-32コードの実行はIA-64モードと比較してもPentium系プロセッサと比較しても非常に性能的に不利である。例えば、Itaniumの機能ユニットは通常のALUでの計算の副作用のため整数フラグを自動的には生成しないし、境界が整っていないメモリロードを複数続けて行うようにはできていない。LinuxやWindows上で動作するIA-32ソフトウェアエミュレーターがあるが、ハードウェアがIA-32モードで実行するよりもエミュレータで実行した方が約50%高性能である。Windowsエミュレータはマイクロソフトから、LinuxエミュレータはNovellのようなLinuxベンダーから入手可能である。Itanium 2のMontecitoからはハードウエアデコーダは削除され、Extensible Firmware Interface (EFI) でIA-32エミュレータがロードされる様になった。
本アーキテクチャはマルチメディア演算や浮動小数点演算に関する命令も用意している。典型的なVLIWではロング命令ワードの各サブ命令の位置が特定の機能ユニットに対応しているが、Itaniumではサブ命令の配置についていくつかの組み合わせ(バンドル)を用意していて、その中にはシリアル実行モードとパラレル実行モードのバランスをとるものもある。バンドルのエンコーディングには将来のIA-64の拡張のために空きがある。加えて、Itaniumは個別に設定可能なプリディケートレジスタ（predicate register）を持っており、各命令について実行時に出力するか否かを決定できる。Itaniumは、起動した時点ではいくつかの命令実行機能が動作しないようになっている。ブートストラップが実行されるとまずExtensible Firmware Interface (EFI) がロードされ、追加の命令がチップ内のメモリに格納される。続いてプロセッサモード(64ビットか32ビットか)や他のブート時の設定が行われる。この設計によりItaniumシステムはEFIプログラムの内容によって異なった機能を展開できる。
128本の64ビット整数レジスタ（r0 - r127）の内、汎用レジスタとしてはr0 - r31の32本が使われる（r0はゼロレジスタで、読み出すと常に 0 を返し、書き込むと例外が発生する）。残りの96本（r32 - r127）はレジスタスタックエンジン (Register Stack Engine; RSE) を使ったレジスタローテーションという手法で管理され、プロシージャ呼び出し間で名前が変更される可能性がある。これは多くのRISCプロセッサに見られるレジスタ・ウィンドウを洗練させたもので、AMD Am29000のオーバーラップウィンドウサイズを変更可能なレジスタ・ウィンドウとの類似性が指摘されるが、IA-64ではプレディケーションと組み合わせることで、ループを自動的に展開して実行することができる。
IA-64アーキテクチャは、128本の64ビット整数レジスタ（r0 - r127）と128本の82ビット浮動小数点レジスタ（f0 - f127）という非常に多くのレジスタを定義している。
まず、2部グラフ G = (X + Y, E ) = G(X, Y ) が X-飽和マッチング（X の全ての頂点を飽和するようなマッチング）を持つならば、任意のW ⊆ X に対して|NG(W )| ≥ |W |であることを示す。MをX-飽和マッチングとする。 このとき、Mによって、与えられたW ⊆ X とマッチングされているY の頂点集合をM(W )と書くと、マッチングの定義より|M(W )|=|W |。 しかし、M(W )の全ての元はW の近傍に属するので、M(W ) ⊆ NG(W )である。 よって、 |NG(W )| ≥ |M(W )| であるから、|NG(W)| ≥ |W |。次に、任意のW ⊆ X に対して|NG(W)| ≥ |W | ならば、G(X,Y)はX-飽和マッチングを持つことを示す。2部グラフG(X,Y)がX-飽和マッチングを持たないと仮定して矛盾を導く。 M をGの最大マッチングすると、M-非飽和点が存在するので、これをu ∈ X とする。 u を始点とする任意のM-交互道を考え、この交互道によってuと接続するすべてのY の頂点の集合をT とする。 同様に、uと接続するすべてのX の頂点の集合(u 自身も含む)をW とする。 u を始点とするM-交互道の終点が、Yに属する点となること（つまり、M-増大道となること）はない。 （もしそのようなことがあれば、M より真に大きなマッチングが構成でき、M の最大性に矛盾する。） ここで、T に属する全ての頂点は、MによりW の頂点とマッチングされており、 逆に全ての頂点 v ∈ W \ {u} はMによりT の頂点とマッチングされているので、 M は W \ {u} と T の間の全単射を与える。よって、 |W | = |T | + 1であり、NG(W) ⊇ T が成立する。 他方、v ∈ Y をw ∈ W に接続される頂点としたとき、辺 (w,v ) が Mに属していれば、v ∈ T。 そうでなければ、辺 (w,v ) を通るM-交互道を構成できるので、v ∈ Tとなり、NG(W) ⊆ Tが成立。 したがって、 |NG(W)| = |T | = |W | − 1 となり、矛盾。