воскресенье, 19 июня 2011 г.

Я.Субботник

Я.Субботник в Екатеринбурге, 2 июля

Я.Субботник в Екатеринбурге пройдет 2 июля в отеле "Московская горка".

Регистрация на мероприятие начнется 16 июня. Количество мест ограничено.

Для тех, кто не попадёт в число участников или не сможет лично присутствовать на Я.Субботнике, будет организована онлайн-трансляция.

Подробную информацию о мероприятии читайте здесь.

Поделиться этой информацией с другими: http://clck.ru/5dzJ

пятница, 10 июня 2011 г.

Код Хэмминга на Python, Глава 1

В начале семестра по предмету "Системы Сотовой Связи" мне было дано задание реализовать кодирование и декодирование какого - либо блочного кода. Я выбрал код Хэмминга. Это саморегулирующийся и самокорректирующийся код, более подробно написано на вики, где разобран сам механизм шифрации и дешифрации. Так как в то время (дело было в ноябре), я рассматривал язык Python, то реализовывать все это я решил на нем.
Входными данными будет 1 байт т.е. 8 символов пример 10101110.
Первое что я сделал это закодил сам алгоритм

# -*- coding: koi8-r -*-
import random
start = '01011101' #ВХОД
T = [[0, 1, 3, 4, 6], [0, 2, 3, 5, 6], [1, 2, 3, 7], [4, 5, 6, 7]] #описывает в каком порядке проходить входную строку
H = ''
L = 0
for x in [0,1,2,3] :     #циклы
    t = 0
    for i in T[x]:
        t = t ^ int(start[i])
    H += str(t)
    L = L ^ int(H[x])
finih = H[0:2] + start[0] + H[2] + start[1:4] + H[3] + start[4:8]+str(L)
finih(random.randint(0, len(finih)-1))^1
print len(finih)
print start + ' исходная последовательность'
print H + ' информационное кодовое слово'
print finih +  'испорченная последовательность с проверочными кодами'

Далее я решил, что неплохо было бы сделать приложение графическим, добавить окошки с кнопочками. Поиск по интернету дал интересную вещь PyQT. Оказывается можно создавать визуальную часть приложения в QtDesigner смотрим тут это отличный инструмент для написания программ на С++ конечно со своими библиотеками, если у вас есть немного времени освойте его QT очень мощный инструмент (также можно писать по symbian), от этой штуки нам потребуется только дезайнер в котором будет создаваться интерфейс приложения.

вторник, 25 января 2011 г.

менеджер поверхностей

Вместо рисования непосредственно в буфер экрана, команды рисунка входят за кадром в битовые массивы, которые потом объединяются с другими битовыми массивами, что-бы сформировать изображение которое видит пользователь. Думаю именно так создается изображение а PrintScrin имеет доступ только к некоторым массивам, и получается что команда PrintScrin формирует изображение из этих массивов, и указатель и видео находятся в других массивах.

четверг, 6 января 2011 г.

Ping

Ну реально пинг, решил завести блог. Кажется это хорошая идея, прежде всего он нужен мне. Вот в ноябре написал программу с таким лихо закрученным сюжетом, а сейчас уже с трудом понимаю как я это все делал. Вот поэтому и решил сделать себе страничку, ну а что удобно типа блокнот. Сначала думал на хабре это делать, но что то не заладилось. Вот еще бы придумать как тут делать удобную подсветку синтаксиса  для кода было бы вообще замечательно. Ладно скоро напишу статью про Python.