# bitシフト
Note: サイクル数はマシンサイクル単位です。
## RL r8
r8の各bitとキャリー(C)を左に1だけ回転させる

    C <- [7 <- 0] <- C

サイクル: 2
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前のr8のbit7
## RL [HL]
HLが指すメモリアドレスの値の各bitと、キャリー(C)を左に1だけ回転させる

    C <- [7 <- 0] <- C

サイクル: 4
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前の[HL]のbit7
## RLA
Aレジスタの各bitとキャリー(C)を左に1だけ回転させる

    C <- [7 <- 0] <- C

サイクル: 1
バイト長: 1
フラグ:
    Z: 0
    N: 0
    H: 0
    C: 回転前のAレジスタのbit7
## RLC r8
r8の各bitを左に1だけ回転させる
溢れたbitはキャリーフラグに格納される

    C <- [7 <- 0] <- [7]

サイクル: 2
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前のr8のbit7
## RLC [HL]
HLが指すメモリアドレスの値の各bitを左に1だけ回転させる
溢れたbitはキャリーフラグに格納される

    C <- [7 <- 0] <- [7]

サイクル: 4
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前の[HL]のbit7
## RLCA
Aレジスタの各bitを左に1だけ回転させる
溢れたbitはキャリーフラグに格納される

    C <- [7 <- 0] <- [7]

サイクル: 1
バイト長: 1
フラグ:
    Z: 0
    N: 0
    H: 0
    C: 回転前のAレジスタのbit7
## RR r8
r8の各bitとキャリー(C)を右に1だけ回転させる

    C -> [7 -> 0] -> C

サイクル: 2
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前のr8のbit0
## RR [HL]
HLが指すメモリアドレスの値の各bitと、キャリー(C)を右に1だけ回転させる

    C -> [7 -> 0] -> C

サイクル: 4
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前の[HL]のbit0
## RRA
Aレジスタの各bitとキャリー(C)を右に1だけ回転させる

    C -> [7 -> 0] -> C

サイクル: 1
バイト長: 1
フラグ:
    Z: 0
    N: 0
    H: 0
    C: 回転前のAレジスタのbit0
## RRC r8
r8の各bitを右に1だけ回転させる
溢れたbitはキャリーフラグに格納される

    [0] -> [7 -> 0] -> C

サイクル: 2
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前のr8のbit0
## RRC [HL]
HLが指すメモリアドレスの値の各bitを右に1だけ回転させる
溢れたbitはキャリーフラグに格納される

    [0] -> [7 -> 0] -> C

サイクル: 4
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前の[HL]のbit0
## RRCA
Aレジスタの各bitを右に1だけ回転させる
溢れたbitはキャリーフラグに格納される

    [0] -> [7 -> 0] -> C

サイクル: 1
バイト長: 1
フラグ:
    Z: 0
    N: 0
    H: 0
    C: 回転前のAレジスタのbit0
## SLA r8
r8を左に1だけ算術シフトさせる
溢れたbitはキャリーに格納される

    C <- [7 <- 0] <- 0

サイクル: 2
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前のr8のbit7
## SLA [HL]
HLが指すメモリアドレスの値を左に1だけ算術シフトさせる
溢れたbitはキャリーに格納される

    C <- [7 <- 0] <- 0

サイクル: 4
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前の[HL]のbit7
## SRA r8
r8を右に1だけ算術シフトさせる
溢れたbitはキャリーに格納される

    [7] -> [7 -> 0] -> C

サイクル: 2
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前のr8のbit0
## SRA [HL]
HLが指すメモリアドレスの値を右に1だけ算術シフトさせる
溢れたbitはキャリーに格納される

    [7] -> [7 -> 0] -> C

サイクル: 4
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前の[HL]のbit0
## SRL r8
r8を右に1だけ論理シフトさせる
溢れたbitはキャリーに格納される

    0 -> [7 -> 0] -> C

サイクル: 2
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前のr8のbit0
## SRL [HL]
HLが指すメモリアドレスの値を右に1だけ論理シフトさせる
溢れたbitはキャリーに格納される

    0 -> [7 -> 0] -> C

サイクル: 4
バイト長: 2
フラグ:
    Z: 結果が0ならセット
    N: 0
    H: 0
    C: 回転前の[HL]のbit0