Re[3]: Программирование под Symbian OS: начало
От: Jakop Россия https://wmspanel.com
Дата: 11.11.05 07:19
Оценка:
Здравствуйте, CrystaX, Вы писали:

CX>Здравствуйте, Jakop, Вы писали:


CX>См. ответ здесь
Автор: CrystaX
Дата: 10.11.05


Я хотел узнать про ARM/не ARM потому, что я тоже работаю с ARM-ом и там целый 64-битный тип — это просто
встроенный тип. Уж не знаю поддерживает ли ARM этот тип непосредственно(думаю что нет), но обьяснение ,
что мол "архитектура не поддерживает поэтому сделано как класс" я не совсем понимаю . Интел тоже не поддерживает __in64
непосредственно — это головняк компилятора.

Вот пример кода работы с __int64 (MSVC 2003)

__int64 i = 20;
00411A2E  mov         dword ptr [i],14h 
00411A35  mov         dword ptr [ebp-8],0 
    i = i*2;
00411A3C  push        0    
00411A3E  push        2    
00411A40  mov         eax,dword ptr [ebp-8] 
00411A43  push        eax  
00411A44  mov         ecx,dword ptr [i] 
00411A47  push        ecx  
00411A48  call        @ILT+265(__allmul) (41110Eh) 
00411A4D  mov         dword ptr [i],eax 
00411A50  mov         dword ptr [ebp-8],edx
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming

https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
Re[4]: Программирование под Symbian OS: начало
От: CrystaX Россия https://crystax.me/
Дата: 11.11.05 08:35
Оценка:
Здравствуйте, Jakop, Вы писали:

J>Я хотел узнать про ARM/не ARM потому, что я тоже работаю с ARM-ом и там целый 64-битный тип — это просто

J>встроенный тип. Уж не знаю поддерживает ли ARM этот тип непосредственно(думаю что нет), но обьяснение ,
J>что мол "архитектура не поддерживает поэтому сделано как класс" я не совсем понимаю . Интел тоже не поддерживает __in64
J>непосредственно — это головняк компилятора.

Согласен. Но сделано так, как сделано. Сделать 64-битный тип C++ классом — это один из возможных путей решения проблемы, не нагружая компилятор. Там с компиляторами и так до недавних пор не все гладко было. Кроме того, разработчики Symbian не ставили перед собой задачу обеспечить возможность работы с TInt64 в других языках (C, например). В Symbian все API — это C++ классы. В этом смысле это уникальная система — во всех остальных известных мне операционных системах используется старый добрый C API.
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[3]: Программирование под Symbian OS: начало
От: Аноним  
Дата: 11.11.05 09:40
Оценка:
CX>Только что посмотрел в SDK для Series 60 2.0 Feature Pack 2 (Symbian 8.0a). TInt64 — класс. Может, в версиях выше это typedef, но сильно сомневаюсь. Очень уж много кода завязано на определенный синтаксис его конструктора и вызов методов. Приду домой, посмотрю.

Хорошо, в 8.0a это класс. Однако, читаем здесь: "TInt64. Releases of Symbian OS prior to v8.0 had no built-in ARM support for 64-bit arithmetic, so the TInt64 class implemented a 64-bit integer as two 32-bit values. On Symbian OS v8.0, TInt64and TUInt64 are typedef’d to long long and use the available native 64-bit support."


CX>Здесь я, видимо, не совсем удачно выразился. Да, конечно есть ассемблерные инструкции для чтения/записи 16-разрядных значений (равно как и 8-разрядных). Когда же я говорил о чтении/записи "по маске", я имел в виду тот факт, что на уровне процессора операция производится с 32-разрядными значениями, как того требует ARM 32-bit архитектура. А для того, чтобы пользователь работал с 8- или 16-разрядными значениями, применяется маска.


В вашем тексте явно сказано: "16-битные целочисленные значения. Представлены 16-битным машинным «полусловом». Обязаны быть выровненными по 2-байтной границе. Доступ к ним организуется чтением 32-битного слова «по маске»."

То есть речь идёт именно о доступе к памяти (потому что говорится о выравнивании), а не о каких-то там "операциях на уровне процессора".


Удивляет, как статья с таким количеством неточностей и просто неверных фактов могли опубликовать в RSDN Magazine? Про структуру не буду говорить, A.R. хорошо написал.

А реакция автора на критику вида "покажите паспорт, прежде чем меня критиковать", плюс игнорирование справедливых замечаний и лепет про "неудачно выразился", заставляет усомниться в зрелости его ума.
Re[4]: Программирование под Symbian OS: начало
От: CrystaX Россия https://crystax.me/
Дата: 11.11.05 09:45
Оценка:
Здравствуйте, <Аноним>, Вы писали:

CX>>Только что посмотрел в SDK для Series 60 2.0 Feature Pack 2 (Symbian 8.0a). TInt64 — класс. Может, в версиях выше это typedef, но сильно сомневаюсь. Очень уж много кода завязано на определенный синтаксис его конструктора и вызов методов. Приду домой, посмотрю.


А>Хорошо, в 8.0a это класс. Однако, читаем здесь: "TInt64. Releases of Symbian OS prior to v8.0 had no built-in ARM support for 64-bit arithmetic, so the TInt64 class implemented a 64-bit integer as two 32-bit values. On Symbian OS v8.0, TInt64and TUInt64 are typedef’d to long long and use the available native 64-bit support."


Тем не менее, пока что подтверждений этому я не нашел. Сегодня еще раз специально посмотрю как с этим дело в Symbian 8.1

CX>>Здесь я, видимо, не совсем удачно выразился. Да, конечно есть ассемблерные инструкции для чтения/записи 16-разрядных значений (равно как и 8-разрядных). Когда же я говорил о чтении/записи "по маске", я имел в виду тот факт, что на уровне процессора операция производится с 32-разрядными значениями, как того требует ARM 32-bit архитектура. А для того, чтобы пользователь работал с 8- или 16-разрядными значениями, применяется маска.


А>В вашем тексте явно сказано: "16-битные целочисленные значения. Представлены 16-битным машинным «полусловом». Обязаны быть выровненными по 2-байтной границе. Доступ к ним организуется чтением 32-битного слова «по маске»."


А>То есть речь идёт именно о доступе к памяти (потому что говорится о выравнивании), а не о каких-то там "операциях на уровне процессора".


А доступ к памяти это не "операция на уровне процессора"?

А>Удивляет, как статья с таким количеством неточностей и просто неверных фактов могли опубликовать в RSDN Magazine? Про структуру не буду говорить, A.R. хорошо написал.


А>А реакция автора на критику вида "покажите паспорт, прежде чем меня критиковать", плюс игнорирование справедливых замечаний и лепет про "неудачно выразился", заставляет усомниться в зрелости его ума.


Ваше право.
... << RSDN@Home 1.1.4 stable rev. 510>>
Re: Программирование под Symbian OS: начало
От: SashaDanchuk  
Дата: 13.11.07 09:50
Оценка:
Здравствуйте, Дмитрий Москальчук, Вы писали:

ДМ>Статья:

ДМ>Программирование под Symbian OS: начало
Автор(ы): Дмитрий Москальчук
Дата: 06.11.2005
В статье затронуты вопросы основных отличий процесса программирования под Symbian от программирования под такие операционные системы, как MS Windows или Linux.
Требуется знание С++


ДМ>Авторы:

ДМ> Дмитрий Москальчук

ДМ>Аннотация:

ДМ>В статье затронуты вопросы основных отличий процесса программирования под Symbian от программирования под такие операционные системы, как MS Windows или Linux.
ДМ>Требуется знание С++

Здравствуйте Дмитрий
Я прочитал статью и ее обсуждение полностью

Скажу Вам, что статья мне очень понравилась
правда чтобы понять все мне пришлось прочитать ее , немного попрограммировать в Simbian и прочитать ее снова

Полностью согласен с Вами что исключення и С++ апи очень важны для Windows программиста который переходит на Simbian

Очень хотылось чтобы Вы не останавливались на достигнутом, и продолжили свой цикл статей

Люди с неконструктивной критикой умеют ломать а не строить сами статей написали мало или не написали ввобще, с завышеной самооценкой

Для меня симбиан действительно новая платформа, и статья мне очень понравилась спасибо!

PS:
Simbian 9.1, CarbideC++1.1, Series S60 SP3 FP1
Re[2]: Программирование под Symbian OS: начало
От: Crypto Украина  
Дата: 13.11.07 10:07
Оценка:
Здравствуйте, SashaDanchuk, Вы писали:

SD>Очень хотылось чтобы Вы не останавливались на достигнутом, и продолжили свой цикл статей


Поддерживаю. Описать AO, IPC, Etel API (CTelephony) и сертификацию/подписывание/тестирование на Symbian 9.x было бы очень хорошо.

SD>PS:

SD>Simbian 9.1, CarbideC++1.1, Series S60 SP3 FP1

sYmbian, please
Re: Программирование под Symbian OS: начало
От: Аноним  
Дата: 23.01.08 00:25
Оценка:
Здравствуйте, Дмитрий Москальчук, Вы писали:

ДМ> T – классы-типы с тривиальными конструкторами и деструкторами. Некоторый аналог POD-типов.


Это не совсем верно. Согласно соглашению об именованиях деструктор у Т-классов не должен быть объявлен вообще т.к. вслучае исключения он вызван не будет.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.