LINUX.ORG.RU

История изменений

Исправление Pinkbyte, (текущая версия) :

pinkbyte@lgentoo4 ~ $ gcc 1.c 
pinkbyte@lgentoo4 ~ $ ./a.out 
data:
  u8      u16     u32     u64
0       0       0       0
1       256     16777216        72057594037927936
2       512     33554432        144115188075855872
3       768     50331648        216172782113783808
4       1024    67108864        288230376151711744
5       1280    83886080        360287970189639680
6       1536    100663296       432345564227567616
7       1792    117440512       504403158265495552
8       2048    134217728       576460752303423488
9       2304    150994944       648518346341351424
10      2560    167772160       720575940379279360
11      2816    184549376       792633534417207296
12      3072    201326592       864691128455135232
13      3328    218103808       936748722493063168
14      3584    234881024       1008806316530991104

Ты ничего с переполнением^W старшинством бит не попутал? :-)

pinkbyte@lgentoo4 ~ $ uname -m
s390x

Те же яйца, вид сбоку:

pinkbyte@timberdoodle ~ $ ./a.out 
data:
  u8      u16     u32     u64
0       0       0       0
1       256     16777216        16777216
2       512     33554432        33554432
3       768     50331648        50331648
4       1024    67108864        67108864
5       1280    83886080        83886080
6       1536    100663296       100663296
7       1792    117440512       117440512
8       2048    134217728       134217728
9       2304    150994944       150994944
10      2560    167772160       167772160
11      2816    184549376       184549376
12      3072    201326592       201326592
13      3328    218103808       218103808
14      3584    234881024       234881024
pinkbyte@timberdoodle ~ $ uname -m
ppc64

Исправление Pinkbyte, :

pinkbyte@lgentoo4 ~ $ gcc 1.c 
pinkbyte@lgentoo4 ~ $ ./a.out 
data:
  u8      u16     u32     u64
0       0       0       0
1       256     16777216        72057594037927936
2       512     33554432        144115188075855872
3       768     50331648        216172782113783808
4       1024    67108864        288230376151711744
5       1280    83886080        360287970189639680
6       1536    100663296       432345564227567616
7       1792    117440512       504403158265495552
8       2048    134217728       576460752303423488
9       2304    150994944       648518346341351424
10      2560    167772160       720575940379279360
11      2816    184549376       792633534417207296
12      3072    201326592       864691128455135232
13      3328    218103808       936748722493063168
14      3584    234881024       1008806316530991104

Ты ничего с переполнением не попутал? :-)

pinkbyte@lgentoo4 ~ $ uname -m
s390x

Те же яйца, вид сбоку:

pinkbyte@timberdoodle ~ $ ./a.out 
data:
  u8      u16     u32     u64
0       0       0       0
1       256     16777216        16777216
2       512     33554432        33554432
3       768     50331648        50331648
4       1024    67108864        67108864
5       1280    83886080        83886080
6       1536    100663296       100663296
7       1792    117440512       117440512
8       2048    134217728       134217728
9       2304    150994944       150994944
10      2560    167772160       167772160
11      2816    184549376       184549376
12      3072    201326592       201326592
13      3328    218103808       218103808
14      3584    234881024       234881024
pinkbyte@timberdoodle ~ $ uname -m
ppc64

Исправление Pinkbyte, :

pinkbyte@lgentoo4 ~ $ gcc 1.c 
pinkbyte@lgentoo4 ~ $ ./a.out 
data:
  u8      u16     u32     u64
0       0       0       0
1       256     16777216        72057594037927936
2       512     33554432        144115188075855872
3       768     50331648        216172782113783808
4       1024    67108864        288230376151711744
5       1280    83886080        360287970189639680
6       1536    100663296       432345564227567616
7       1792    117440512       504403158265495552
8       2048    134217728       576460752303423488
9       2304    150994944       648518346341351424
10      2560    167772160       720575940379279360
11      2816    184549376       792633534417207296
12      3072    201326592       864691128455135232
13      3328    218103808       936748722493063168
14      3584    234881024       1008806316530991104

Ты ничего с переполнением не попутал? :-)

pinkbyte@lgentoo4 ~ $ uname -m
s390x

Те же яйца, вид сбоку:

pinkbyte@timberdoodle ~ $ ./a.out 
data:
  u8      u16     u32     u64
0       0       0       0
1       256     16777216        16777216
2       512     33554432        33554432
3       768     50331648        50331648
4       1024    67108864        67108864
5       1280    83886080        83886080
6       1536    100663296       100663296
7       1792    117440512       117440512
8       2048    134217728       134217728
9       2304    150994944       150994944
10      2560    167772160       167772160
11      2816    184549376       184549376
12      3072    201326592       201326592
13      3328    218103808       218103808
14      3584    234881024       234881024
pinkbyte@timberdoodle ~ $ uname -m
ppc64

Исходная версия Pinkbyte, :

pinkbyte@lgentoo4 ~ $ gcc 1.c 
pinkbyte@lgentoo4 ~ $ ./a.out 
data:
  u8      u16     u32     u64
0       0       0       0
1       256     16777216        72057594037927936
2       512     33554432        144115188075855872
3       768     50331648        216172782113783808
4       1024    67108864        288230376151711744
5       1280    83886080        360287970189639680
6       1536    100663296       432345564227567616
7       1792    117440512       504403158265495552
8       2048    134217728       576460752303423488
9       2304    150994944       648518346341351424
10      2560    167772160       720575940379279360
11      2816    184549376       792633534417207296
12      3072    201326592       864691128455135232
13      3328    218103808       936748722493063168
14      3584    234881024       1008806316530991104

Ты ничего с переполнением не попутал? :-)

pinkbyte@lgentoo4 ~ $ uname -m
s390x