Category: программирование

Июн 16 2015

Книга Б. Страуструп «Язык программирования С++»

Прочитал книгу Б. Страуструп «Язык программирования С++».

1363474817_6q2alrlwncaa

Книга очень хорошая, это не только справочник по синтаксису языка и библиотеке STL, это ещё и прекрасный учебник с множеством примеров кода. Также в книге есть рассуждения автора о процессе проектирования о организации процесса разработки ПО. Этим он отличается от многих авторов из «академической» среды, таких, как Н.Вирт. Не стоит забывать, что Б. Страуструп в первую очередь программист — практик, работающий в коммерческой организации над большими проектами, а не преподаватель кафедры программирования, чья самая большая программа не превышает ста строк.

Не могу не привести цитату (гл. 23.5):

«В организации, которая обращается со своими программистами как с полными идиотами, вскоре будут работать только те программисты, которые желают и способны вести себя как полные идиоты.»

Июн 15 2015

Цитата

Цитата из книги Б. Страуструп «Язык программирования С++» (гл.23.3) (текст выделен мной):
«Обычный подход… заключается в том, чтобы свести разработку к задачам относительно низкого уровня, подгоняемых под общую грубую схему. То есть идея заключается в том, что создаётся класс быстро обучаемых (дешевых) взаимозаменяемых программистов низкого уровня («кодировщиков») и класс не таких дешевых, но столь же взаимозаменяемых (и, стало быть, столь же малоценных) проектировщиков. Предполагается, что кодировщики не принимают проектных решений, в то время как проектировщики не утруждают себя грубой работой по вниканию в детали кодирования. Такой подход часто приводит к неудаче. Там, где он работает, в результате получаются чрезмерно громоздкие системы с низкой производительностью.

По сути дела, такой системе не хватает механизма обратной связи, чтобы люди учились на чужом опыте. Это растрата человеческого таланта. Создание среды разработки, в рамках которой человек может проявлять разнообразные таланты, развивать новые способности, вносить идеи и радоваться своей работе — это не просто цель, достойная сама по себе, но вещь, приносящая практическую экономическую выгоду.«

Май 28 2015

Книга Pong P. Chu «FPGA prototyping by Verilog examples»

Прочитал книгу «FPGA prototyping by Verilog examples», очень понравилось.
Обычно в таких книгах приводится синтаксис языка и какие-либо примеры проектов, часто далёкие от практики. В этой книге описываюься примеры взаимодействия с периферийными устройствами: клавиатурой, мышью, VGA-мониторм, памятью SRAM. Примеры приведены в расчёте на плату фирмы Digilent с FPGA семейства Spartan-3, но приведённые примеры практически не содержат чего-то специфического именно для данного семейства FPGA.

fpga_vlog_front

Во второй половине книги рассмотрен встраиваемый микроконтроллер PicoBlaze, его ассемблер, и приводятся примеры программ на нём.

В книге рассматривается метод синтеза RTL-кода из ASMD-диаграмм (представление алгоритма, сочетающее в себе графическую блок-схему алгоритма и граф конечного автомата).

Также в книге рассматривается проект простой видеоигры, которую можно сделать на плате Digilent (или на любой другой, если позволяют аппаратные возможности).

Май 06 2015

Книга Б. Страуструп «Дизайн и эволюция C++»

Дочитал книгу «Дизайн и эволюция С++».

1231405218_dizajjn-i-jevoljucija

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

Апр 22 2015

Книга «Как программировать на C++»

Дочитал книгу «Как программировать на C++», авторы Х. Дейтел, П. Дейтел (C++ How To Program. H.M.Deitel, P.J.Deitel).

IMG_20150422_091531

Не могу сказать, что узнал что-то новое, но хотя бы повторил некоторые нюансы библиотеки STL. Книга большая, 1152 с.

Мар 03 2015

Книга Louise Crockett и др. «The Zynq Book»

Дочитал книгу «The Zynq Book», руководство по системе на кристалле (SoC) Zynq-7000 фирмы Xilinx.

Напомню, что Zynq-7000 состоит из двух ядер ARM Cortex A9 и блока программируемой логики PL (по сути, встроенная в систему FPGA).

В книге подробно рассматривается структура системы, программный пакет Vivado, предназначенный для разработки под Zynq-7000, подробно рассматривается процесс преобразования кода на языке высокого уровня (например, С) в форму RTL, предназначенную для конфигурирования PL . Эта возможность обеспечивается программой Vivado HLS.
В последней части книги кратко описывается структура и процедура загрузки Linux в память.

ZynqPerspective
Интересная книга, интересный процессор.

Фев 22 2015

Интересная ссылка: GNU Radio

GNU Radio под лицензией GPLv3.
Набор программ и библиотек для реализации различных радиосистем.
Содержит различные фильтры, модуляторы, демодуляторы, смесители, кодеки и другие блоки.
Домашняя страница http://gnuradio.org/redmine/
Пример использования.

Read more »

Фев 17 2015

FPU. Часть 1

Не задумывались ли вы о том, как работает FPU процессора? Казалось бы, там всё довольно просто. Есть стандарт представления чисел с плавающей точкой, IEEE754, а сама реализация арифметических операций очевидна.
Но на самом деле, за кажущейся простотой скрыто множество нюансов.

Read more »

Дек 02 2014

Книга Bruno Cardoso Lopes «Getting Started with LLVM Core Libraries»

Весьма хорошая книга, прояснила некоторые моменты. Конечно, инфраструктура LLVM слишком велика, чтобы ее можно было описать в одной книге, но она дает понимание и направление для дальнейших экспериментов.

812KZWXZ8VL._AA1500_812KZWXZ8VL._AA1500_

 

Ноя 11 2014

Всё, что вы хотели знать про Binutils, но стеснялись спросить

http://atgreen.github.io/ggx/