直接の回答ではないのですが、
横方向の動きというのは、以下のような感じでled[]配列に
格納されているビットマップデータを横に動かしたいということでしょうか。
C
1 unsigned char led[8] = {
2 0b00011000,
3 0b00111000,
4 0b01111000,
5 0b00011000,
6 0b00011000,
7 0b00011000,
8 0b00011000,
9 0b01111110,
10 };
11
12 unsigned char led[8] = {
13 0b00110000,
14 0b01110000,
15 0b11110000,
16 0b00110000,
17 0b00110000,
18 0b00110000,
19 0b00110000,
20 0b11111100,
21 };
22
23 unsigned char led[8] = {
24 0b01100000,
25 0b11100000,
26 0b11100001,
27 0b01100000,
28 0b01100000,
29 0b01100000,
30 0b01100000,
31 0b11111001,
32 };
33
34 unsigned char led[8] = {
35 0b11000000,
36 0b11000001,
37 0b11000011,
38 0b11000000,
39 0b11000000,
40 0b11000000,
41 0b11000000,
42 0b11110011,
43 };
44
45 unsigned char led[8] = {
46 0b10000001,
47 0b10000011,
48 0b10000111,
49 0b10000001,
50 0b10000001,
51 0b10000001,
52 0b10000001,
53 0b11100111,
54 };
55
56 unsigned char led[8] = {
57 0b00000011,
58 0b00000111,
59 0b00001111,
60 0b00000011,
61 0b00000011,
62 0b00000011,
63 0b00000011,
64 0b11001111,
65 };
66
67 unsigned char led[8] = {
68 0b00000110,
69 0b00001110,
70 0b00011110,
71 0b00000110,
72 0b00000110,
73 0b00000110,
74 0b00000110,
75 0b10011111,
76 };
77
78 unsigned char led[8] = {
79 0b00001100,
80 0b00011100,
81 0b00111100,
82 0b00001100,
83 0b00001100,
84 0b00001100,
85 0b00001100,
86 0b00111111,
87 };
88
それとも、データを90度回転させて、横向きにするようなイメージでしょうか。
c
1 unsigned char led[8] = {
2 0b00011000,
3 0b00111000,
4 0b01111000,
5 0b00011000,
6 0b00011000,
7 0b00011000,
8 0b00011000,
9 0b01111110,
10 };
11
12 unsigned char led[8] = {
13 0b00000000,
14 0b10000100,
15 0b10000110,
16 0b11111111,
17 0b11111111,
18 0b10000000,
19 0b10000000,
20 0b00000000,
21 };
やりたいことを具体的に書いて、タグに[C]を追加すれば回答が付きやすくなると思います。
また、組み込みマイコンなので、使用しているコンパイラなど開発環境を詳しく書いておくと
インラインアセンブラなど環境固有の機能を活用した回答が付くかもしれないですよ。