уровень абстракции кода

Привет, 6 февраля 2004 г., 20:36:08, ты писал(а):

DO> Тут вот ассемблеристы сильно ратуют за удобное средство разработки. И то DO> верно, а то пишу я такой код для ИАР С (2.28):

DO> typedef struct { DO> S16 value; DO> __eeprom S8 correction; DO> } sensor_state;

DO> И ведь не компилит он, ругается на illegal declaration в строчке где DO> указано DO> __eeprom. Hеужели я сильно много от него прошу? И как быть? В класс DO> завернуть наверное поможет? Целевое устройство: 90S4433. Может DO> где-нибудь DO> опцию волшебную включить? Перейти на ассемблер не предлагать ;)

Интересно, как ты себе представляешь структуру, одно поле которой лежит в SRAM, а другое - в EEPROM ? Подучи язык.

Всего хорошего.

Reply to
Alexey Krasnov
Loading thread data ...

Привет Dennis!

06 Feb 04 20:36, Dennis Opanasenko писал All:

DO> typedef struct { DO> S16 value; DO> __eeprom S8 correction; DO> } sensor_state;

DO> И ведь не компилит он, ругается на illegal declaration в строчке где DO> указано __eeprom. Hеужели я сильно много от него прошу?

Если я правильно понял, ты пытаешься разместить одну переменную сразу в двух разных секциях.

DO> И как быть?

Используй две разные переменные - одну размещай в data, другую - в eeprom.

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Крыскас. Потому что крыса вам доверяет.

Reply to
Alex Mogilnikov

Тут вот ассемблеристы сильно ратуют за удобное средство разработки. И то верно, а то пишу я такой код для ИАР С (2.28):

typedef struct { S16 value; __eeprom S8 correction; } sensor_state;

И ведь не компилит он, ругается на illegal declaration в строчке где указано __eeprom. Hеужели я сильно много от него прошу? И как быть? В класс завернуть наверное поможет? Целевое устройство: 90S4433. Может где-нибудь опцию волшебную включить? Перейти на ассемблер не предлагать ;)

Денис.

Reply to
Dennis Opanasenko

"Alexey Krasnov" snipped-for-privacy@cheboksary.org сообщил/сообщила в новостях следующее: news: snipped-for-privacy@zeim.ru...

Да я-то как раз легко представляю себе такую структуру, а вот разработчики языка похоже не представили. И разработчики компилера тоже :)

Денис.

Reply to
Dennis Opanasenko

"Alex Mogilnikov" <Alex snipped-for-privacy@f70.n.z2.fidonet.org>

сообщил/сообщила в новостях следующее: news:MSGID_2=3A5054=2F70 snipped-for-privacy@fidonet.org...

в двух разных

Точно, я надеялся, что компилятор достаточно умный и спокойно распихает разные поля по разным типам памяти привязав к обращениям к типу __eeprom обработку EEREAD EEWRITE. Hе срослось...

eeprom. Hу это сложно, помнить надо... Лучше я однако все это в класс заверну.

Денис.

Reply to
Dennis Opanasenko

"Dennis Opanasenko" snipped-for-privacy@f66.n.z2.fidonet.org>

сообщил/сообщила в новостях следующее: news:3195164922%c09hgc$254g$ snipped-for-privacy@freemail.irk.ru...

И как ты себе представляешь указатель на объект этой структуры?

Ну, ты понял :)

Reply to
Alexey Ovchinnikov

Dennis, ты ещё здесь сидишь?

Вторник Февраль 10 2004 11:00, Dennis Opanasenko wrote to All:

Разработчики языка ориентировались на "плоскую" модель памяти.

DO> И разработчики компилера тоже :)

Сделали, что могли, чтобы учесть реалии "железа" ;-)

Георгий

Reply to
George Shepelev

"Alexey Ovchinnikov" snipped-for-privacy@r66.ru сообщил/сообщила в новостях следующее: news:c0b35n$2jl5$ snipped-for-privacy@ddt.demos.su...

Да, вот к чему приводит писательство под большие писюки на новомодных языках... Там с начала 2003 года указатели отменили.

:)

Денис.

Reply to
Dennis Opanasenko

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.