SREG

概要

SREGは、ATmega328Pの状態レジスタです。

ソースコード

SREGは、hardware/tools/avr/avr/include/avr/common.h に定義されています。以下に全ソースコードを示します。

1
2
3
4
5
6
7
8
9
#define SREG _SFR_IO8(0x3F)
#  define SREG_C  (0)
#  define SREG_Z  (1)
#  define SREG_N  (2)
#  define SREG_V  (3)
#  define SREG_S  (4)
#  define SREG_H  (5)
#  define SREG_T  (6)
#  define SREG_I  (7)

0x3Fは状態レジスタが存在するアドレスです。_SFR_IO8()を呼び出すマクロです。

状態レジスタは、8ビットのレジスタで、各ビットの意味は以下の通りです。

ビット76543210
ITHSVNZC

I: Global Interrupt Enable:割り込み許可

T: Bit Copy Storage:ビットコピー

H: Half Carry Flag:ハーフキャリーフラグ

S: Sign Bit:符号ビット

V: Two’s Complement Overflow Flag:2の補数オーバーフローフラグ

N: Negative Flag:負フラグ

Z: Zero Flag:ゼロフラグ

C: Carry Flag:キャリーフラグ

バージョン

7.3.0-atmel3.6.1-arduino7

最終更新日

May 15, 2021

inserted by FC2 system