unsigned char test (void)
{
unsigned char temp;
global_var = 0x55;
0: 85 e5 ldi r24, 0x55 ; 85
2: 48 2e mov r4, r24
temp = global_var;
return temp;
}
4: 85 e5 ldi r24, 0x55 ; 85
6: 08 95 ret
Непонятно зачем последний ldi (могли бы заоптимизировать, правда может я нужный ключик оптимизации не поставил), но все равно в r4 значение попадает :-)