Анализ и оптимизация на софтуерни приложения
|
|
- Галина Барева
- преди 4 години
- Прегледи:
Препис
1 Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев (от гледна точка на производителността)
2 Съдържание 1. Видове транслатори 2.Фази по време на компилация 3. Оптимизационна фаза 2/20
3 Къде сме в момента? Решаван проблем Дизайн, алгоритми, данни Високо ниво Входна програма (сорс код) Компилатори, библиотеки Архитектура на системата Средно ниво Архитектура на набора инстр. Микро-архитектура Ниско ниво Схеми Слоеве при транслация 3/20
4 Компилатор или интерпретатор Компилатор транслира до машинен код лексик. анализ синтакт. анализ... генерация на код линкер loader сорс код Интерпретатор изпълнява сорс кода директно машинен код лексик. анализ синтакт. анализ Операторите в цикъл се анализират отново и отново сорс код интерпретация Хибриден компилатор интерпретира междинен код сорс код...компилатор... междинен код (напр. Common Intermediate Language (CIL)) ВИМ Сорс кода се транслира до код за виртуално-изчислителна машина (ВИМ) ВИМ интерпретира кода, симулирайки реална машина 4/20
5 Кратка история В миналото загадка, сега една от най-добре познатите области в информатиката 1957 Fortran първи компилатори (аритм. изрази, изречения, процедури) 1960 Algol първата явна дефиниция на език (граматики във форма на Бакус-Наур, блокова структура, рекурсии) 1970 Pascal потребителски дефинирани типове, виртуални машини 1985 C++ обектно-ориентиран, изключения, шаблони (templates) 1995 Java just-in-time компилация *Разглеждат се само императивни езици 5/20
6 Какво представлява компилаторът Език от високо ниво Език от ниско ниво Компилатор (compiler) Един (няколко) от езиците: C/C++/Objective-C C#/Java Pascal/Delphi... Може да бъде: Машинен код (x86 и др.) LLVM bitcode CIL Java Bytecode... 6/20
7 Защо компилаторите са важни? Защо трябва да ни интересуват компилаторите? Компилаторът е само инструмент... Компилаторът не е само инструмент Той има отговорността да каже на компютъра какво Вие искате да му кажете/направите Познаването на процеса на компилация помага на програмиста да съставя по-ефективни програми. Важно е да се знае какво може да направи компилатора за вас и какво не 7/20
8 Динамична структура на компилатор Поток от символи v a l = 1 0 * P I + i Лексикален анализ (скарниране) Поток от лексеми идент. val присв. = число 10 умн. * идент. PI плюс + идент. i вид стойност Синтактичен анализ (разпознаване) Синтактично дърво = val + * i 10 PI 8/20
9 Динамична структура на компилатор Синтактично дърво = val + Синтактично дърво, символна таблица,... * 10 PI Семантичен анализ = val + i f * PI i i 1 val float... 2 PI float... 3 i float /20
10 Динамична структура на компилатор (пр.) Синтактично дърво = val + i f * PI i 10 Маш. независима оптимизация Генерация на междинен код Триадресен код: t0 = inttofloat(10); t1 = t0 * PI t0 = t1 + i val = t0 Static Single Assignment: t0 = inttofloat(10); t1 = t0 * PI t2 = t1 + i val = t2 10/20
11 Динамична структура на компилатор (пр.) Маш. независима оптимизация Триадресен код: t1 = 10 * val = t1 + i Static Single Assignment: t1 = 10 * val = t1 + i Генерация на код Асемблер fild 10 fld fmul st0, st1 fld [i] fadd st0, st1 fst [val] Машинно зависима оптимизация Асемблер fld fld [i] fadd st0, st1 fst [val] 11/20
12 Оптимизационни фази Оптимизационните фази са: Машинно независими Трансформации върху някое от междинните представяния на входната програма, поддържано от компилатора Машинно зависими Трансформации върху някое от междинните представяния на изходната програма (генерирания код, приложими за конкретни архитектури) 12/20
13 Стъпки в оптимизационната фаза Анализ Намират се проблемни места в програмата или междинното представяне Идентификация След като анализът е показал, че има проблемно място, се идентифицира мястото в програмата или представянето и се определя вида трансформация, която да се предприеме Трансформация Трансформацията преобразува кода в най-често в по-ефективен, еквивалентен на предишния, код 13/20
14 Типове оптимизации Peephole optimizations Обикновено се извършват късно (в процеса на компилация), след като се генерира машинен код. Този тип оптимизации изследва няколко съседни инструкции и преценява дали може да ги замени с една инструкция или с по-малка последователност от инструкции. Локални оптимизации Те използват информацията само достъпна в тялото на целевата функция. Това намалява времената за анализ, но ограничава оптимизацията. Междупроцедурни оптмизации Тези оптимизации анализират целия код на програмата. Повечето събрана информация означава, че оптимизациите могат да бъдат по-ефективни в сравнение с локалните Оптимизация на цикли Тези оптимизации действат върху оператори за цикъл в езиците за програмиране (като for и while). Този тип може да постигне значително подобрение, защото найчесто циклите изразходват много време при изпълнение 14/20
15 Типични оптимизации Развиване на константи Опростяват се константните изрази като се извършват изчисленията по време на компилация Разпространение на константи Заместват се стойностите на известните константи в изразите Елиминиране на мъртъв код Премахва се кодът в програмата, който не може да се изпълни при никакви обстоятелства. Мъртвия код е два вика: недостижим код и мъртви присвоявания (записи) Елиминиране на общи подизрази Премахва общите подизрази като ги изважда като променлива и след това ги замества с тази променлива Развиване на цикли Редуцират се броя на итерациите в цикъла като се използват различни техники. Например копиране на тялото на цикъла няколко пъти и увеличаване на стъпката на цикъла Заделяне на регистри Използва максимално добре наличните регистри 15/20
16 Фактори, указващи влияние на оптимизациите Целевата машина Много от решенията за прилагане на оптимизации се взимат като се има предвид целевата машина. Понякога е възможно тези фактори на целевата машина да се параметризират. Така компилаторът може да се използва да прилага оптимизации, специфични за различни целеви машини. Архитектурата на целевата машина Размер и тип на кеша (32KB 16MB). Микроархитектурата на целевия процесор Зависи до определена степен от броя регистри, дали архитектурата е RISC или CISC, архитектурата и дължината на конвейера, броя на ALU и FPU. Намеренията за използване Зависи за какво се използва компилираната програма. Например тя може да се използва за дебъгиране, за общо ползване (от разнородни потребители на различни машини), за специализирано ползване, или от вградени системи (микроконтролери и др.) 16/20
17 Как да влияем на компилатора? Флагове Проблем: те са много ( Препроцесор Използвайки директиви като #if, #elseif, #ifdef, #pragma Intrinsics Функции в компилаторът на даден език. Компилаторът познава много добре тези функции и може да генерира по-добър код. 17/20
18 Как реагира компилаторът? Език от високо ниво Език от ниско ниво Компилатор (compiler) #include <math.h> int main() { return sin(2.1); }.LFB0:.cfi_startproc pushq %rbp.cfi_def_cfa_offset 16.cfi_offset 6, -16 movq %rsp, %rbp.cfi_def_cfa_register 6 movabsq $ , %rax movq %rax, -8(%rbp) movl $0, %eax popq %rbp.cfi_def_cfa 7, 8 ret.cfi_endproc 18/20
19 Как да изберем/подменим компилатора? Качество/Лекота на използване Компилира ли ми кода лесно, без да се налага много допълнителни настройки? Коректност Получавам ли същите резултати? Как да съм сигурен? Производителност Получавам ли същата производителност? Как да съм сигурен? Има ли нови възможности за повишаване на производителността? 19/20
20 Вие срещу компилатора Очаквате той винаги да прави нещата правилно Той очаква вие да правите правилните неща Той трябва да е вашият най-добър съюзник Не му се доверявайте преди да сте го тествали Използвайте повече от един компилатор 20/20
Анализ и оптимизация на софтуерни приложения
Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Какво могат и какво не могат компилаторите Съдържание 1. Оптимизационен континуум 2. Някои известни видове оптимизации 2/49 Оптимизационен
ПодробноАнализ и оптимизация на софтуерни приложения
Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Производителност 2. Оптимизация 3. Методи за оптимизация 2/18 Защо производителността е важна? Дава възможност
ПодробноПрограмиране на Паскал
Поради връзката на С++ с езика С в голяма част от литературата е прието записването С/С++. Това е найизползваният език за програмиране в света, поради което синтаксисът на някои от по-новите езици като
ПодробноАнализ и оптимизация на софтуерни приложения
Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Какво е векторизация? 2. Примери 3. на цикли 4. Масиви от структури или структури от масиви 5. на при различни
ПодробноАнализ и оптимизация на софтуерни приложения
Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание Конвейерно изпълнение Проблеми при конвейерното изпълнение Структурни опасности Даннови опасности Контролни опасности
ПодробноПроф
Утвърдил:.. / доц. д-р Е. Великова / Утвърден от Факултетен съвет с протокол... /... СОФИЙСКИ УНИВЕРСИТЕТ СВ. КЛИМЕНТ ОХРИДСКИ Факултет по Математика и Информатика Специалност: Компютърни науки М И К 0
ПодробноМИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА
МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА У Ч Е Б Н А П Р О Г Р А М А ЗА ЗАДЪЛЖИТЕЛНА ПРОФЕСИОНАЛНА ПОДГОТОВКА ПО ПРОГРАМИРАНЕ И АЛГОРИТМИЧНИ ЕЗИЦИ ЗА ПРОФЕСИЯ: КОД 482010 ИКОНОМИСТ - ИНФОРМАТИК СПЕЦИАЛНОСТ:
Подробно4
Наследяване и 4 Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 11 май 2017 г. Трифон Трифонов (ООП 16/17) Наследяване и голямата
ПодробноАнализ и оптимизация на софтуерни приложения
Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание Конвейерно изпълнение Проблеми при конвейерното изпълнение Структурни опасности Даннови опасности Контролни опасности
ПодробноАнализ и оптимизация на софтуерни приложения
Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Какво е паралелизация? 2. Примери 3. Паралелни алгоритми 4. Синхронизация. Критични секции 5. Проблеми при паралелните
ПодробноДефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София
Дефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.1 9 март 2005 г. template< class
ПодробноСтруктура на програма в C - Част 2 - типове, функции
Структура на програма в C Част 2 - типове, функции Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София 10 март 2019 г. И. Георгиев, Х.
ПодробноДинамична памет Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. Тр
Динамична памет Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. Трифон Трифонов (УП 16/17) Динамична памет 21 декември
ПодробноC++
Управляващи оператори в C++ Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 18 30 октомври 2018 г. Трифон Трифонов (УП 18/19) Управляващи оператори в C++ 18 30 октомври
ПодробноСтруктура на програма в C - Част 7 - масиви, оператор за индексиране, sizeof оператор
Структура на програма в C Част 7 - масиви, оператор за индексиране, sizeof оператор Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София
ПодробноSlide 1
Списъци. Структура и синтаксис. Създаване и показване. Основни операции(добавяне, изваждане на елемент или цял подсписък; подреждане). Трансформации. проф. дмн С. Христова Списъци Списъците / list са основна
ПодробноLush Green
Класове Какво са класовете? Основен инструмент на ООП Средство за дефиниране на абстрактни типове данни Синтактична конструкция, която позволява логическо групиране на данни и операциите над тях Дефиниция
ПодробноПредефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве
Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision :
Подробно3. Синтактичен анализ. Граматика на учебен програмен език STUDENT. Извеждане на изречения от правилата на граматиката Цел на упражнението Упражнението
3. Синтактичен анализ. Граматика на учебен програмен език STUDENT. Извеждане на изречения от правилата на граматиката Цел на упражнението Упражнението представя кратко въведение в синтактичния анализ.
Подробно2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнениет
2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнението представя кратко въведение в теорията на лексическия
ПодробноКомпютърна Графика и Презентации - Графично моделиране
Компютърна Графика и Презентации Графично Моделиране. Генеративна Компютърна Графика гл. ас. д-р А. Пенев Генеративната КГ се занимава с: Построяване на обекти (модели); Генерация на изображение; Преобразуване
ПодробноЛекции по Програмиране първа част I. Въведение в компютрите и програмирането КОМПЮТЪР = АПАРАТУРА + ПРОГРАМНО ОСИГУРЯВАНЕ Апаратна част Hardware(Харду
Лекции по Програмиране първа част I. Въведение в компютрите и програмирането КОМПЮТЪР = АПАРАТУРА + ПРОГРАМНО ОСИГУРЯВАНЕ Апаратна част Hardware(Хардуер)Програмна част Software(Софтуер) Хардуерът включва:
ПодробноПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА
СРЕДИ ЗА ПРОГРАМИРАНЕ ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА Същност на програмното осигуряване За да могат компютрите да разбират описаните на езика за програмиране алгоритми, те трябва да бъдат преведени
ПодробноHomework 3
Домашно 3 по дисциплината Дискретни структури за специалност Информатика I курс летен семестър на 2015/2016 уч г в СУ ФМИ Домашната работа се дава на асистента в началото на упражнението на 25 26 май 2016
ПодробноЛабораторно упражнение 6 Тема: Оператори за цикли в езика C++. Реализиране на циклични алгоритми I. Цел на лабораторното упражнение Да се затвърдят зн
Лабораторно упражние 6 Тема: Оператори за цикли в езика C++. Реализира на циклични алгоритми I. Цел на лабораторното упражние Да се затвърдят знанията на студентите за организацията и синтаксиса на програми
ПодробноУЧЕБНА ПРОГРАМА ПО ВИЗУАЛНО ПРОГРАМИРАНЕ ЗА IV КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА
УЧЕБНА ПРОГРАМА ПО ВИЗУАЛНО ПРОГРАМИРАНЕ ЗА IV КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА Обучението по Визуално Програмиране в начален етап
ПодробноMathematica CalcCenter
Mathematica CalcCenter Основни възможности Wolfram Mathematica CalcCenter е разработен на базата на Mathematica Professional и първоначално е бил предназначен за технически пресмятания. Информация за този
ПодробноУЧЕБНА ПРОГРАМА ПО ВИЗУАЛНО ПРОГРАМИРАНЕ ЗА III КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА
УЧЕБНА ПРОГРАМА ПО ВИЗУАЛНО ПРОГРАМИРАНЕ ЗА III КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА Обучението по Визуално Програмиране в начален етап
Подробно-
Лениво оценяване и програмиране от по-висок ред Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 7 януари 2016 г. Трифон Трифонов (ФП-И 15/16) Лениво оценяване 7 януари 2016 г.
ПодробноMicrosoft Word - KZ_TSG.doc
ПРИЛОЖЕНИЕ НА ТЕОРИЯТА НА СИГНАЛНИТЕ ГРАФИ ЗА АНАЛИЗ НА ЕЛЕКТРОННИ СХЕМИ С ОПЕРАЦИОННИ УСИЛВАТЕЛИ В теорията на електронните схеми се решават три основни задачи: ) анализ; ) синтез; ) оптимизация. Обект
ПодробноMicrosoft PowerPoint - Ppt ppt [Read-Only]
ТЕХНИЧЕСКИ УНИВЕРСИТЕТ ВАРНА КАТЕДРА АВТОМАТИЗАЦИЯ НА ПРОИЗВОДСТВОТО ЦИФРОВИ СИСТЕМИ ЗА УПРАВЛЕНИЕ - ЧАСТ 2 Янко Янев ВИДОВЕ ТЕХНОЛОГИИ ЗА ИЗГРАЖДАНЕ НА ЦИФРОВИ СИСТЕМИ ЗА УПРАВЛЕНИЕ микропроцесори микроконтролери
ПодробноПри изпълнението на програма се извършват определени действия над данните, дефинирани в програмата.тези данни могат да бъдат постоянни ( константи ) и
При изпълнението на програма се извършват определени действия над данните, дефинирани в програмата.тези данни могат да бъдат постоянни ( константи ) или изменящи се (променливи). Тези данни най-често бива
ПодробноВ тази част, ще разгледаме аритметичните и логически операции, както, и включването им в изрази. В следващата таблица са дадени всички възможни операц
В тази част, ще разгледаме аритметичните и логически операции, както, и включването им в изрази. В следващата таблица са дадени всички възможни операции в езикът C и С++. Символ Предназначение Аритметични
ПодробноВиртуални функции
Виртуални функции Статично свързване Как компилаторът избира кой метод или коя функция да бъде извикана? Прави се сравнение между формални и фактически параметри и се избира най-точното съвпадение в случай,
ПодробноПрограмен език C Пламен Танов Ненко Табаков Мартин Вачовски Технологично училище Електронни системи Технически университет София версия 0.5
Програмен език C Пламен Танов Ненко Табаков Мартин Вачовски Технологично училище Електронни системи Технически университет София версия 0.5 Литература Необходими програми Kernighan & Ritchie - The C Programming
ПодробноУважаеми колеги, Тази учебна програма е разработена от екипа на Obrazovanieto.info. Тя е свързана с използването на Дигитална Математика/IT Математика
УЧЕБНА ПРОГРАМА ПО ДИГИТАЛНА МАТЕМАТИКА ЗА II КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА Обучението по Дигитална математика в начален етап е
ПодробноУЧЕБНА ПРОГРАМА ПО ВЪВЕДЕНИЕ ВЪВ ВИЗУАЛНОТО ПРОГРАМИРАНЕ ЗА I КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕ
УЧЕБНА ПРОГРАМА ПО ВЪВЕДЕНИЕ ВЪВ ВИЗУАЛНОТО ПРОГРАМИРАНЕ ЗА I КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА Обучението по Въведение във Визуалното
ПодробноДинамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София
Динамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.3 16 ноември 2004 г. Пример:
ПодробноMicrosoft Word - Primer3_1.doc
3.1.) Създаване на нов проект demultiplexor и нов файл demultiplexor.vhd в текстовия редактор Galaxy Стартирайте текстовия редактор Galaxy, използвайки опциите : Start > Programs > WARP > Galaxy 3.1.1.
Подробно<4D F736F F D20D0E0E7FFF1EDE5EDE8E520EFEE20F7EB2E EEF220C7CECF20F120C8E7F52EB EEF E31312E3138E3>
Изх. К 8075#1/ 05.11.2018г. До: Лицата, заинтересовани от Обществена поръчка с предмет: Разработване на софтуер за киоск терминали, уеб портал и мобилно приложение по проект,,easyguide interactive mobile
ПодробноЦЕНТЪР ПО ИНФОРМАТИКА И ТЕХНИЧЕСКИ НАУКИ УЧЕБНА ПРОГРАМА Утвърждавам: Декан: CS 206 ИЗКУСТВЕН ИНТЕЛЕКТ Приета: прот. 8 от г.; Актуализирана
ЦЕНТЪР ПО ИНФОРМАТИКА И ТЕХНИЧЕСКИ НАУКИ УЧЕБНА ПРОГРАМА Утвърждавам: Декан: CS 206 ИЗКУСТВЕН ИНТЕЛЕКТ Приета: прот. 8 от 28.04.2005 г.; Актуализирана прот. 16 от 17.06.2016 г. Лектор: Акад. Проф. Иван
ПодробноОСНОВНО УЧИЛИЩЕ ПРОФ. ПЕНЧО НИКОЛОВ РАЙКОВ гр. ТРЯВНА УТВЪРДИЛ Директор:... (Виолета Иванова) ГОДИШНО ТЕМАТИЧНО РАЗПРЕДЕЛЕНИЕ по учебния предмет КОМПЮ
ОСНОВНО УЧИЛИЩЕ ПРОФ. ПЕНЧО НИКОЛОВ РАЙКОВ гр. ТРЯВНА УТВЪРДИЛ Директор:... (Виолета Иванова) ГОДИШНО ТЕМАТИЧНО РАЗПРЕДЕЛЕНИЕ по учебния пмет КОМПЮТЪРНО МОДЕЛИРАНЕ за 2018/2019 учебна година III клас първи
ПодробноМасиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 9 ноември 2016 г. Триф
и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 9 ноември 2016 г. Трифон Трифонов (УП 16/17) и низове 9 ноември 2016 г. 1 / 5 Логическо
ПодробноКанонична форма на клас или 4 (голямата четворка) Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно и
Канонична форма на клас или 4 (голямата четворка) Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 6 април 2017 г. Трифон Трифонов
ПодробноРегистрация на профил в Google и работа с облака Google Drive (Google Диск) I. Създаване на Google акаунт Първо зареждате или
Регистрация на профил в Google и работа с облака Google Drive (Google Диск) I. Създаване на Google акаунт Първо зареждате www.google.com или www.google.bg. Няма значение кой адрес ще напишете. Най-вероятно
ПодробноНАУЧНИ ТРУДОВЕ НА РУСЕНСКИЯ УНИВЕРСИТЕТ , том 54, серия 3.2 Реализация на вградения механизъм за извод в междинната форма на SPIDER/CNP програма
Реализация на вградения механизъм за извод в междинната форма на SPIDER/CNP програма Цанко Големанов Abstract: Control Network Programming (CNP) is a style of high-level programming that is especially
ПодробноСподеляне на анонимни данни с Lenovo Съдържание Споделяне на анонимни данни с Lenovo... 1 Harmony... 1 Lenovo Companion Lenovo Customer Engag
Споделяне на анонимни данни с Lenovo Съдържание Споделяне на анонимни данни с Lenovo... 1 Harmony... 1 Lenovo Companion 3.0... 2 Lenovo Customer Engagement Service... 3 Lenovo Experience Improvement (само
ПодробноУказатели. Маисиви, указатели, параметри на функции Калин Георгиев 21 декември 2016 г. Калин Георгиев Увод в програмирането 21 декември 2016 г. 1 / 23
Указатели. Маисиви, указатели, параметри на функции Калин Георгиев 21 декември 2016 г. Калин Георгиев Увод в програмирането 21 декември 2016 г. 1 / 23 Указатели! Калин Георгиев Увод в програмирането 21
Подробно