реклама на сайте
подробности

 
 
> Почему так ICC 7 компилирует, Кого глючит?
Serega Doc
сообщение Oct 24 2005, 14:17
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 267
Регистрация: 11-11-04
Из: Одесса
Пользователь №: 1 103



char STAY, INDEX;


в С
INDEX=(STAY + 0x04);
в Асме
0322 2D82 MOV R24,R2
0323 5F8C SUBI R24,0xFC
0324 2EA8 MOV R10,R24

Почему так?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Gematogen
сообщение Oct 24 2005, 14:29
Сообщение #2





Группа: Новичок
Сообщений: 13
Регистрация: 18-10-05
Пользователь №: 9 808



Цитата(Serega Doc @ Oct 24 2005, 18:17)
char STAY, INDEX;


в С
INDEX=(STAY + 0x04);
в Асме
    0322 2D82      MOV R24,R2
    0323 5F8C      SUBI R24,0xFC
    0324 2EA8      MOV R10,R24

Почему так?
*




Все верно:
1. в R24 грузим STAY (R2)
2. а отнять от БАЙТА число= ((0xFF-слагаемое) +1), эквивалентно БАЙТ+слагаемое, т.е. STAY-(0xFF-0x04+1)=STAY+0x04
3. грузим результат в INDEX (R10)

все именно так потому, что 0xFC - допкод 4, т.е -4, а x+4=x-(-4)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 03:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.0383 секунд с 7
ELECTRONIX ©2004-2016