# MI_CpuComp*

## 構文

  `#include <nitro/mi.h>`
  `int MI_CpuComp8( const void* mem1, const void* mem2, u32 size );`
  `int MI_CpuComp16( const void* mem1, const void* mem2, u32 size );`
  `int MI_CpuComp32( const void* mem1, const void* mem2, u32 size );`

## 引数

mem1 | 比較対象アドレス1
mem2 | 比較対象アドレス2
size | 比較サイズ

## 返り値

比較対象が等しいなら 0、mem1 が小さいなら負、mem1 が大きいなら正の値を返します。

## 説明

CPUでメモリ比較を行います。

`MI_CpuComp8()` は8ビット単位で比較を行います。比較対象アドレスのアラインメントを考慮する必要はありません。

`MI_CpuComp16()` は 16ビット単位で比較を行います。比較対象アドレスは2バイトアラインメントする必要があります。

`MI_CpuComp32()` は 32ビット単位で比較を行います。比較対象アドレスは4バイトアラインメントする必要があります。

## 内部動作

DMAコントローラは使用せず、CPUだけで処理します。システムコールは使用しません。

## 参照

## 履歴

2007/12/10 初版