Публикации по теме 'compilers'


NaN не равно NaN!
Да, не-число не равно самому себе. Но в отличие от случая с undefined и null, когда сравнение неопределенного значения с null истинно, но жесткая проверка (===) того же даст вам ложное значение, поведение NaN обусловлено спецификацией IEEE, которой все системы должны придерживаться . В этом блоге я расскажу о NaN и о том, как они реализованы в движке v8. Краткая история: Согласно спецификациям IEEE 754 любая операция, выполняемая над значениями NaN, должна давать ложное значение или..

Как работает JavaScript: внутри движка V8 + 5 советов, как писать оптимизированный код
Пару недель назад мы начали серию статей, нацеленных на более глубокое изучение JavaScript и того, как он работает на самом деле: мы думали, что, зная строительные блоки JavaScript и то, как они работают вместе, вы сможете писать лучший код и приложения. Первый пост из серии был посвящен обзору движка, среды выполнения и стека вызовов. Этот второй пост будет посвящен внутренним частям движка Google V8 JavaScript. Мы также дадим несколько быстрых советов о том, как написать лучший код..

Развертывание приложений машинного обучения на микроконтроллерах
Введение Развертывание приложений машинного обучения на микроконтроллерах требует большой оптимизации, а затем нам придется работать со слоями на C/C++, чтобы у нас была готовая к развертыванию модель. Но вы можете быть ИТ-специалистом или только начинаете работать со встроенными устройствами и у вас очень мало опыта работы с микроконтроллерами. В этой увлекательной статье я познакомлю вас с платформой, которая упростит процесс развертывания приложений машинного обучения на..

Под капотом: компиляция GCC
Как компилируется код? Многие из нас наверняка слышали термин «компилировать» при переводе исходного кода в машинный код, но, возможно, вам он не совсем понятен. Надеюсь, этот пост прольет свет на эту тайну. Прежде чем перейти к тому, как компилируется код, важно понять, почему он компилируется. Короче говоря, существует несоответствие в общении между людьми и машинами. Есть один универсальный язык, который понимает компьютер, это машинный код. Но для людей это слишком сложно понять и..

Пошаговая компиляция программы на языке c с помощью gcc.
Пошаговая компиляция программы на языке c с помощью gcc. Если вы когда-либо писали код на c, вы почти наверняка использовали gcc, clang или lcc. Эти программы берут удобочитаемый код и переводят его в машинный код для выполнения. Вам не нужно знать, как работают эти шаги, чтобы запустить программы на языке C, и вам может быть все равно, но если вы здесь, то я надеюсь, что вы захотите немного отодвинуть занавес, чтобы увидеть шаги, которые выполняются. чтобы оживить вашу тяжелую..

Будущее GopherJS и Go в браузере
В этом посте сравнивается GopherJS с Go 1.11 и его новым экспериментальным портом WebAssembly, предлагается, как библиотеки привязки веб-API могут развиваться для поддержки обоих компиляторов, и предоставляется контекст истории и будущих возможностей Go в браузере. Предпосылки и будущее Go 1.11 и GopherJS 1.11–1 знаменуют собой важную и захватывающую веху на пути Go в браузере. В Go 1.11 добавлен экспериментальный порт для WebAssembly , что дает программистам Go второй выбор..

Статические библиотеки на C
Статические библиотеки на C В языках программирования библиотеки представляют собой набор символов (их можно понимать как переменные, функции и многое другое), хранящихся в одном месте для быстрого доступа. Библиотеки используются, как было сказано ранее, для легкого доступа в программе (обычно основная функция, но может использоваться и в других функциях) к некоторому символу, который уже создан или определен в такой библиотеке, что делает поток работы намного быстрее и эффективнее...