|
NOP(ノップ)あるいは NOOP(ノープ)とは no operation (何もしない)を意味する。プログラミングやネットワーク通信と言ったコンピュータ関連の技術用語として使用される。 == 機械語 == 機械語において NOP は多くの命令セットで用意されている命令である。プロセッサはこの命令を読みとると文字通り「何もせず」にプログラムカウンタのインクリメントのみを行う。それ自身では何の意味も持たない命令ではあるが、 *外部機器や他のプログラムとの同期のタイミングを取るための時間稼ぎ *ジャンプ命令のジャンプ先の指標 *後で命令を追加する予定の場所にダミーとして置く *たとえば遅延スロットにとりあえず置く、あるいは置ける命令がない時に置く *NOPスレッドによる命令ポインタの制御 *ワンチップマイコンのPROMでは、0x00か0xffのどちらか「上書き可能なほう」で潰すと NOP になるようにしておくと、再利用に便利 などの用途で使用される。 規則的に命令を決めた結果、何の意味も持たない命令(同一レジスタでの移動、次の番地へのジャンプ)が出来たのでそれをNOPとすることもあれば(TMS9900など。また、x86の場合 XCHG AX, AX である。ただし内部的な「AXレジスタを操作する」という意味は近年の高性能化プロセッサではそのまま解釈すると並列化の邪魔になるので、AXの参照を伴わないよう特別に解釈される)、専用の命令(オペコード)を用意することもある。1950年代のEDSACにおいて既に NOP に相当する命令はあった(コード 'X' であるが、何もしないという命令は命令でないと考えたためか命令一覧では省かれていることがあり、文字コード一覧に命令も添えてある表のほうで確認できる(EDSACでは文字コードとオペコードを一致させていた))。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「NOP」の詳細全文を読む スポンサード リンク
|