Про то что влезет — я почти не сомневаюсь :)
Я вот жду когда уже подешевеют SSD накопители. Вот даже в университете у меня тема дисертации косвенно с этим связана :)
Интересная устройствинка. Вот если туда запихнуть чтонить SSD-подобное — вообще сказка была бы. А так что-то с мобильными жесткими дисками у меня не складываются отношения…
Числа с плавающей точкой — это не единственное с чем мы можем рабоать. А для тяжелых вычислений вообще желательно от них отказатся. Особенно на телефонах.
А вообще статья не про это :)
Какой 386. Она замечательно работала на моем 2-м компьютере семейства х86 (первым был 186 вторым 286 с сопроцессором). В то время о звуковой карте я мог только мечтать. Но и то что прога вытворяла через PC Speaker…
Блин класно. Прямо вспомнилось почему я занялся программированием — увидел у друга програмку Impulse Tracker (это досовская програмка для создания .MOD музыки) и захотел сделать проигрывалку этого формата с различными визуальными эффектами…
Однажды пошел я на обед из офиса где работаю. Когда возвращался — глянул на ифон. А там какаято странная иконка появилась «3G» (дело было неделю назад, т.е. до официального запуска). Ну естественно немного потестил. Мерялок я никаких не запускал, но ролик с ютуба грузился раза в 4 быстрее чем с обычным EDGE.
Хех. В мои задачи входило создание приложения. Продет его совсем другой человек в японии (аутсорсинг или как это зовется по современному). Были мысли чтонить сове на основе этого движка написать — да пока не слишком времени хватает (кроме постоянной работы помогаю своему другу писать приложение «Galileo» (на AppleStore уже есть кстати) ).
Хм. Ну тут можно много вариантов придумать. Лично я обычно узнаю версию операционной системы (UIDevice вроде умеет это), и уже в зависимости от этого выполняем разный код. Но если честно я такого никогда не делаю. Потому что этот новый метод, отсутсвующий в 2.0, приходится писать самому и в итоге это автоматом работет и в 2.0 и в 3.0.
С удивлением — т.к. это для меня была новость :)
Асмом я занимался на x86 процах (286-686 и SSE2 немного поковырял). Ну и немного с программируемыми микросхемами поколдовал.
Набор комманд. У armv6 (по сравнению с armv5) есть целый класс комманд, который сильно ускоряет обработку аудио данных. Яркий пример (то чего в этой статье я забыл упомянуть) — сложение с насыщением.
Вот такой код сделает сумму 2-х пар 16-ти битных чисел. inline volatile int SignedSaturatedAddDual(SInt32 x, SInt32 y)
{
register int32_t result;
asm volatile("qadd16 %0, %1, %2"
: "=r"(result)
: "r"(x), "r"(y)
);
return result;
}
Причем если результат сложения не будет вмещатся в 16 бит — будет происходить насыщение а не переполнение. Т.е. не надо делать 32 битное сложение с 2-мя последующими проверками (или еще какие подобные выкрунтасы).
Я вот жду когда уже подешевеют SSD накопители. Вот даже в университете у меня тема дисертации косвенно с этим связана :)
А вообще статья не про это :)
И именно из-за простоты этот формат был довольно популярен среди програмеров.
З.Ы. Демки я тож писал в свое школьное время…
Со всеми анимациями перехода между окнами :)
Или как там по зарубежному будет. Flashman :)
Асмом я занимался на x86 процах (286-686 и SSE2 немного поковырял). Ну и немного с программируемыми микросхемами поколдовал.
Вот такой код сделает сумму 2-х пар 16-ти битных чисел.
inline volatile int SignedSaturatedAddDual(SInt32 x, SInt32 y)
{
register int32_t result;
asm volatile("qadd16 %0, %1, %2"
: "=r"(result)
: "r"(x), "r"(y)
);
return result;
}
Причем если результат сложения не будет вмещатся в 16 бит — будет происходить насыщение а не переполнение. Т.е. не надо делать 32 битное сложение с 2-мя последующими проверками (или еще какие подобные выкрунтасы).