Pull to refresh
33
0
Владимир @kasato4kin

User

Send message

Трюк с XOR для собеседований и не только

Reading time8 min
Views110K


Есть целая куча популярных задач для собеседований, которые можно решить одним из двух способов: или логичным применением стандартных структур данных и алгоритмов, или использованием некоторых свойств XOR сложным для понимания способом.

Хоть и непривычно ожидать решения с XOR на собеседованиях, довольно забавно разбираться, как они работают. Оказывается, все они основаны на одном фундаментальном трюке, который я постепенно раскрою в этом посте. Далее мы рассмотрим множество способов применения этого трюка с XOR, например, при решении популярной задачи с собеседований:

Дан массив из n — 1 целых чисел, находящихся в интервале от 1 до n. Все числа встречаются только один раз, за исключением одного числа, которого нет. Найдите отсутствующее число.

Разумеется, существует множество прямолинейных способов решения этой задачи, однако есть и довольно неожиданный, в котором применяется XOR.
Читать дальше →
Total votes 76: ↑70 and ↓6+80
Comments104

При выбросе хлама главное — не начать его рассматривать. Часть 1?

Reading time4 min
Views35K
Некоторое время назад, весело грохоча привязанными к хвостам пустыми банками из под закуски, мои знакомые проходили мимо помойки и увидели стоящую рядом сумку подозрительно опрятного вида. Заглянув внутрь, они решили дать посмотреть на это и мне тоже. Внутри сумки был почти полностью комплектный ноутбук iRU Stilo-3014COMBO.

Кому тоже интересно заглянуть под капот и испробовать в современном окружении — прошу под кат.

image
Читать дальше →
Total votes 53: ↑50 and ↓3+47
Comments26

Как я компьютер «Радио 86-РК» настраивал

Level of difficultyMedium
Reading time7 min
Views16K

Всем привет! Расскажу вам о том, как я собирал (и тут же ремонтировал) ретро-компьютер на базе Радио86-РК. Данной разработке через некоторое время исполняется четвёртый десяток! А процессору Intel 8080, на базе которого она сделана - все 50 лет. По ходу дам пояснения, как можно собрать аналогичное изделие, сколько оно стоит (по состоянию на 2023 год), с какими проблемами я столкнулся.

Приступим!

Читать далее
Total votes 95: ↑94 and ↓1+118
Comments50

Восстановление ПК «Микроша»

Reading time5 min
Views165K
В прошлой своей статье, посвященной сборке навесным монтажом ПК Специалист-экспресс, я упомянул, что у меня есть еще ПК Микроша (клон известного Радио-86РК), ожидающий своего часа. Итак, это время пришло. Сегодня я планирую запустить его.


Читать дальше →
Total votes 116: ↑114 and ↓2+112
Comments45

Взгляд изнутри: Вскрытие чипа Nvidia 8600M GT

Reading time6 min
Views97K
image
Предисловие

Года 3-4 назад судьба распорядилась так, что в руки мне попал ноутбук Asus G2S. Счастье моё длилось ровно до прошлой зимы, когда ни с того, ни с сего на экране стали появляться артефакты, особенно при запуске игрушек или «мощных» приложений, активно работающих с видеочипом. В результате оказалось, что проблема именно в нём. Nvidia для практически всей геймерской линейки G2 поставляла видеочипы с браком (отслоение контактов между самим кристаллом и подложкой), который обнаруживался лишь через пару лет интенсивной работы. Решение было однозначным – замена видеочипа. Но что делать со старым?! Ответ на этот вопрос пришёл на редкость быстро…
Много трафика под катом
Читать дальше →
Total votes 263: ↑260 and ↓3+257
Comments80

Цифровая археология: старая графика

Reading time1 min
Views7.4K
Публикация на хабре «Цифровая археология: как спасают давно утерянные данные» затронула интересную мне тему. Периодически читаю о восстановлении той или иной ЭВМ, об обнаружении старых накопителей и данных на них (например Восстановление PDP-11/04 ). Мой интерес не позволил мне пройти мимо старой книги, в которой были опубликованы несколько примеров примечательных работ в области компьютерной графики. Обратите внимание, что по все работы выполнены на бумаге графопостроителем с помощью программы автора. К сожалению я не подумал отсканировать и текст статьи, поэтому, кроме общих фраз о выставках художников, я не запомнил об авторах ничего и названия книги тоже не помню.
image
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments8

Темное искусство воскрешения: как восстанавливают данные с поврежденных носителей

Reading time8 min
Views70K

(с)

Восстановить данные — это не только вернуть к жизни полетевший жесткий диск. В широком смысле данные могут быть представлены на каком угодно носителе, а погибнуть — всеми возможными способами.

Восстановление данных это целая наука. Названия у нее пока нет, но, пожалуй, ее можно назвать компьютерной археологией, предметом интереса которой является восстановление цифровыми методами любой поврежденной либо стертой информации.

Так, компьютерные археологи могут восстановить семейные фотографии с поврежденного смартфона или данные с жесткого диска, уничтоженного преступником в попытке избавиться от доказательств, а также помогут воссоздать детали механизма, разрушенного несколько тысячелетий назад.
Total votes 60: ↑56 and ↓4+52
Comments73

Полупроводниковая электроника

Reading time30 min
Views372K


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



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





Иллюстраций: 34, символов: 51 609.



Читать дальше →
Total votes 488: ↑479 and ↓9+470
Comments152

Анализ исходного кода и защиты от копирования Prince of Persia

Reading time13 min
Views27K
image

Часть 1: введение


17 апреля 2012 года Джордан Мекнер опубликовал исходный код Prince of Persia.

Даже несмотря на то, что это версия для Apple II, написанная на ассемблере процессора 6502, было очень приятно погрузиться в код этой легендарной игры. Как обычно, меня ждало множество программных интересностей.

Очевидно слабая для программирования игр среда Apple II на самом деле была фундаментом несравнимых ни с чем инноваций и творчества: самомодифицирующийся код, внутренний загрузчик, умный формат гибких дисков и смещение таблиц поиска. В каждом своём модуле Prince Of Persia хранит сокровища инженерной мысли.

Чтение исходников позволило мне не только узнать больше о процессе разработки игр в 80-х, но и снова вызвало чувство признательности за те вещи, которые сегодня считаются естественными.

Как обычно, я вёл подробные записи и на их основе создал эту статью. Надеюсь, она вдохновит других на чтение исходного кода и усовершенствование своих навыков разработки.
Total votes 72: ↑71 and ↓1+70
Comments25

Цифровая археология: как спасают давно утерянные данные

Reading time10 min
Views32K


Чертежи позабытых процессоров, исходные коды легендарных игр, неизвестные произведения искусства, — чего только не находят в архивах любители старины. Их задача — восстановить, надёжно сохранить и каталогизировать.

Может показаться, что мы живём в век, когда информация практически не способна потеряться: что однажды было оцифровано или создано на компьютере, будет, имей оно хоть какую-то ценность, тиражироваться и вечно кочевать с одного цифрового носителя на другой. Это, к сожалению, не совсем так: стандарты и форматы меняются с поразительной скоростью, а носители информации (в особенности — магнитные диски) имеют крайне ограниченный срок службы. «Цифровая археология» — то есть извлечение данных со старых носителей и перекодирование в современные форматы становится всё более актуальной дисциплиной. В этой области существуют специалисты, и раз за разом появляются истории о том, как они героически извлекли из цифровых руин нечто, имеющее неоспоримую ценность.
Читать дальше →
Total votes 61: ↑60 and ↓1+59
Comments11

Ремонт принтера от мейнфрейма IBM 1401 эпохи 60-х

Reading time14 min
Views17K

Мейнфрейм IBM 1401 (слева) в Музее компьютерной истории печатает фрактал Мандельброта на принтере 1403 (справа)

В Музее компьютерной истории для демонстрации стоят два рабочих мейнфрейма IBM 1401, но несколько недель назад у одного из них внезапно отказал принтер. Я помог его починить, но это оказалось сложнее, чем мы ожидали. По ходу пришлось изучить логические схемы проверки ошибок в принтере, буфер печати и даже низкоуровневые сигналы ферритовой памяти. Эта статья о нашем расследовании и том, как мы всё-таки нашли неисправный германиевый транзистор.
Читать дальше →
Total votes 72: ↑72 and ↓0+72
Comments63

Программируем микроволновку или контроллер 40-летней давности

Reading time5 min
Views84K
Привет, недавно мне совершенно случайно попалась в руки такая железка:
image

Ну железка и железка, подумал я… На плате присутствует микроконтроллер РВЕ035, расширитель IO m5l8243p, ИР12 между РФ5 и контроллером и там еще где-то ЛН1 в стороне болтается. Мне сразу понравилась хорошая раритетная ПЗУ на 2Кб РФ5 в панельке в золоте. Думаю, сниму ее, а остальное смело в утиль, бо вся плата залита лаком по самое небалуйся..А потом все-таки стало интересно, а что это такое вообще?
Читать дальше →
Total votes 179: ↑173 and ↓6+167
Comments48

Ускоряем программу для 50-летнего процессора на 180000%

Level of difficultyHard
Reading time36 min
Views46K

В прошлом году я написал программу, вычисляющую 255 цифр числа π на самом первом микропроцессоре от Intel - 4004. В той статье я упоминал рекорд ENIAC'a - 2035 цифр [^1], но побить его не смог. Настало время закрыть гештальт. В этот раз возьмём одного из преемников от Intel - 4040.

Читать далее
Total votes 225: ↑223 and ↓2+285
Comments41

Семь приемов в Excel, которые делают диаграммы профессиональными

Reading time8 min
Views71K

Хотя сейчас я работаю в ИТ-отрасли, много лет назад я верстал рекламную газету, и с тех пор дизайн – мой профессиональный навык и увлечение за пределами профессии.

Сделать диаграммы привлекательными гораздо проще, чем вы думаете. Получить рекомендации на все случаи жизни не выйдет, но освоить несколько приемов в Excel и узнать азы теории, вы сможете за 10 минут. 

Из тридцатилетнего опыта и десятков прочитанных книг я выбрал семь полезных приемов. Их мы и разберем в этой статье в блоге ЛАНИТ.

Читать далее
Total votes 70: ↑69 and ↓1+86
Comments37

Зачем программисту микроконтроллеров тригонометрия? (или Обзор Усилителя Звука из Apple AirTag)

Level of difficultyEasy
Reading time7 min
Views9.4K

На 12ом году опыта программирования микроконтроллеров мне наконец-то пригодилась школьная тригонометрия (6-класс).
Это настолько специфический случай, что я решил накропать про это заметку.

Когда Вам надо добавить в устройство звук, то можно воспользоваться микросхемой MAX98357A. Это по сути DAC у которого на входе I2S на выходе PWM.

В этой заметке я расскажу о своём опыте работы с усилителем MAX98357A и о том как его тестировать.

Читать далее
Total votes 23: ↑18 and ↓5+19
Comments37

Information

Rating
Does not participate
Date of birth
Registered
Activity