list p=16f877a ; PIC16F877A用のプログラムであることを宣言 #include p16f877a.inc ; PIC16F877A用のヘッダ・ファイルを読み込む REG equ 0x20 movlw 0x1 movwf REG bcf STATUS, C ; キャリ・フラグは0にしておく rlf REG, f ; 左シフトで2倍に movlw 0x2 movwf REG bcf STATUS, C ; キャリ・フラグは0にしておく rrf REG, f ; 右シフトで1/2に movlw 0x1 movwf REG rlf REG, f ; 左シフト3回で2×2×2=8倍に rlf REG, f rlf REG, f andlw B'11111000' ; 下位3ビットを0にする movlw D'16' movwf REG rrf REG, f ; 右シフト3回で1/2×1/2×1/2=1/8に rrf REG, f rrf REG, f andlw B'00011111' ; 上位3ビットを0にする goto $ end ; プログラムの最後には必ず書く リスト3-16 Copyright 2005 Noriaki Mitsunaga