H8
読み:エイチはち
外語:H8

 かつての日立製作所の半導体部門(現ルネサス)の開発したマイクロコンピューター
目次

概要
 8ビット版と16ビット版が用意されている。
 8ビット版は8個の16ビットレジスター、16ビット版は8個の32ビットレジスターが利用できる。
 8ビットのH8/300およびH8/300Lシリーズと、16ビットのH8/300Hシリーズ、H8Sシリーズがある。これらは全て、バイナリレベルでの上位互換がある(但し内部I/Oポートのアドレスが異なることがある)。また、非互換ながら、より高性能なH8/500シリーズがある。
 

特徴

基本仕様

雰囲気
 使用感は、Motorola 68000とよく似ている。
 エンディアンネスビッグエンディアンであることなども同様である。
 但し、68000のように複雑怪奇なアドレッシングモードはなく、従来Z80などを使っていたプログラマーでもすんなり移行できるような仕様となっている。

8ビット版
 8ビット版であっても、8×8ビット演算や16÷8ビット演算を行なう命令などが用意されているのは大きな特徴といえる。
 また、フラッシュメモリーやウォッチドッグタイマー、ADコンバーターを搭載した製品(いわゆるMCU)も用意されており、組み込み用として非常に強力かつ有用なプロセッサーである。

命令体型
 命令は2バイト(16ビット)単位で定義され、効率化されている。
 H8の特徴的な命令に、「MOV.s @ERs+, Rd」のように、読んでポインターに使ったレジスターを加算する命令(.sはサイズで、.b/.w/.lがある)、「BTST.B Rn, Rd」のようにレジスターRdの、レジスターRnで指定したビットの内容をゼロフラグに入れる、などの命令がある。
 組み込み系ではよく使う処理だけに、標準で命令が存在するのは便利であろう。

再検索