Просмотр полной версии : Cyberden (форумный IT-клуб)
Paul Kellerman
30.10.2013, 14:25
Дабы не смущать простых смертных, ламеров и школоту "ужасами"
типа BGP, MPLS, PLL, LFSR, XOR, RDTSC предлагаю воинам IT-дзена
тусоваться здесь и в этой теме обсуждать специфические вопросы,
и консультировать по возможности (и желанию) простых смертных.
Первоначальный состав клуба: saovu, Dikoy, gav, kravets, Kellerman.
P.S. User-level вопросы выбора компьютерного железа, настройки
софта, подключения к интернет здесь не обсуждаем. Есть отдель-
ный раздел для этого. Юмор тоже желательно только профильный.
Дмитрий В.
30.10.2013, 17:17
Paul Kellerman, а послушать можно будет, что пойму? :rolleyes:
Hogfather
30.10.2013, 18:52
(обиженно хлопая дверью) Ну и ладно! Я себе заведу нормальный АйТи-клуб, с лаптой и девками.
Hogfather, ударим хореем по булевой алгебре! :D
Добавлено через 25 секунд
Вот кто как на 10 делит?
Hogfather
30.10.2013, 19:20
Вот кто как на 10 делит?
Вам какой способ больше нравится: через логарифмы или перестановки десятичного разделителя в строке символов с помощью регулярного выражения?
Paul Kellerman
30.10.2013, 20:10
Для беззнаковых 32-битных целых:
mov eax,value
mov edx,1999999Ah
mul edx
mov eax,edx
Paul Kellerman, ещё можно a \= 10;
Но давайте без привязки к языку и камню, а чисто алгоритмически.
Вот с умножением всё просто. Старый баян из Кнута, кажется
X = X * 1
X0 = (X*4 + X) * 2
X00 = ((X*2 + X)*8 + X) * 4
X000 = ((X*32 - X)*4 + X) * 8
X0000 = (((X*4 + X)*8 - X)*16 + X) * 16
А на деление есть набор алгоритмов, но все жЫрные или не точные.
Добавлено через 35 секунд
пока для челочисленки
Добавлено через 2 минуты
Paul Kellerman, А, всё, въехал, умножение и сдвиг на 32 бита.
Только метод требует переменных, в 2 раза объёмней исходных. Не очень хорошо это порой...
Paul Kellerman
30.10.2013, 20:18
Прости, Хогфазер, но ты точно не кибервоин :no:
А в статистике круто шаришь, респект форева.
Paul Kellerman, на си можно заменить на
x = ((0x1999999A * value) >> 32);
Dikoy, gav, kravets, Kellerman.
(обиженно хлопая дверью) Ну и ладно! Я себе заведу нормальный АйТи-клуб, с лаптой и девками.
Прости, Хогфазер, но ты точно не кибервоин
http://surovy-gorod.ru/upload/iblock/aa6/dmtmp_img_1382972912_3761.jpg
http://surovy-gorod.ru/
Paul Kellerman
31.10.2013, 13:13
Простой генератор прямоугольных импульсов управляемый напряжением.
1) Период линейно зависит от управляющего напряжения.
2) Симметричный (скважность всегда равна 2).
3) Высокое входное сопротивление.
P.S. Придумал Kellerman, для разнообразия :)
Перерыл весь Инет, именно такой схемы нет.
http://4put.ru/pictures/max/766/2353163.jpg
Hogfather
31.10.2013, 17:19
(бурчит) Какие то ложные тут айтишники. Где косплееры-лесбиянки и няшные котики? Что за технократический постмодерн вместо фото сисек?
Aspirant_Cat
31.10.2013, 17:43
няшные котики
Ня! Звали? Тута мы!
http://i4.beon.ru/85/37/1793785/20/69090820/1235912218_31990.jpeg
технократический постмодерн
http://files.doobybrain.com/wp-content/uploads/2009/04/russian-robot.jpg
Paul Kellerman
01.11.2013, 11:36
Вот кто как на 10 делит?
Для беззнаковых 32-битных целых:
mov eax,value
mov edx,1999999Ah
mul edx
mov eax,edx
Для знаковых 32-битных целых нужно использовать команду
imul и увеличивать частное на 1 при отрицательном делимом.
mov eax,value
mov edx,1999999Ah
imul edx
bt edx,31
adc edx,0
mov eax,edx
Paul Kellerman
03.11.2013, 17:06
Вот кто как на 10 делит?
Окончательная версия (с учетом ошибок округления), которая дает точные результаты,
полностью совпадающие с результатами idiv by 10 на всем диапазоне -2^31...2^31 - 1.
mov eax,value
mov edx,66666667h
imul edx
sar edx,2
bt edx,31
adc edx,0
mov eax,edx
P.S. То есть 32-битные знаковые целые надо умножать на ((2^34)/10) и сдвигать на 34 бита.
Плохо, что в разрядность не влезает...
Paul Kellerman
03.11.2013, 22:37
Задействованы только два 32-битных регистра и ничего более.
А городить цепочку сдвигов и суммирований - длинно и долго,
но при особом дефиците регистров возможно это оправдано.
Paul Kellerman
05.11.2013, 10:44
.....
Степан Капуста
06.11.2013, 11:15
Для беззнаковых 32-битных целых:
mov eax,value
mov edx,1999999Ah
mul edx
mov eax,edx
А для RISC-подбных камней слабо?
Paul Kellerman
06.11.2013, 15:41
Вот кто как на 10 делит?
Оптимизированный вариант кода, который генерирует компилятор
Intel C++ Compiler v10 для деления знаковых 32-битных целых на 10.
mov ecx,value
mov eax,66666667h
imul ecx
sar ecx,31
sar edx,2
sub edx,ecx
mov eax,edx
P.S. Самый быстрый вариант, который мне попадался.
А для RISC-подбных камней слабо?
Тебе надо - ты и придумывай, и проверяй, а мы оценим твои наработки ;)
Paul Kellerman
11.11.2013, 09:00
Электрическая схема (по сути виртуальный стенд) в среде NI Multisim 10 для изучения циклического кодирования и декоди-
рования информации. Циклический код (7, 4): 4 информационных и 3 контрольных бита, исправляет одиночные искажения.
http://www.aspirantura.spb.ru/forum/picture.php?albumid=154&pictureid=1394
1) Переключатель J1 задает режим работы кодера. Нижнее положение переводит схему в исходное состояние «сброса»,
верхнее положение запускает процедуру кодирования и передачи информации в течение 7 тактовых импульсов.
2) Набор перемычек J2 задают значение 4 информационных разрядов на стороне кодера. Нижнее положение перемычки
соответствует значению «0» для разряда.
3) Светодиод CLK отображает тактовые импульсы. Светодиод CON загорается при завершении кодирования (вычисления
контрольных разрядов). Светодиод RDY загорается при завершении передачи всех 7 разрядов в канал связи.
4) Индикатор UL1 отображает в шестнадцатеричном эквиваленте 4 информационных разряда, индикатор UL2 отображает
3 контрольных разряда на стороне кодера.
5) Набор перемычек J3 задают искажения 7 разрядов, передаваемых по каналу связи. Нижнее положение перемычки соот-
ветствует отключенному состоянию (не вносит искажение). Фактическое искажение информации происходит при работе
кодера, который выполняет кодирование и передачу информации в канал связи.
6) Индикатор UL3 - отображает в шестнадцатеричном эквиваленте 4 информационных разряда, а индикатор UL4 отобража-
ет 3 контрольных разряда, прошедших через канал связи с учетом искажений.
7) Переключатель J4 задает режим работы декодера. Нижнее положение переводитсхему в исходное состояние «сброса»,
верхнее положение – запускает процедуру приема и исправления информации в течение 14 тактовых импульсов.
8) Индикатор UL5 отображает в шестнадцатеричном эквиваленте 4 информационных разряда, а индикатор UL6 отображает
3 контрольных разряда на стороне декодера. Индикатор UL7 отображает в шестнадцатеричном эквиваленте 3 разряда син-
дрома искажений, вычисляемого на стороне декодера.
9) Светодиод CLK отображает тактовые импульсы. Светодиод CON загорается при завершении приема всех 7 разрядов из
канала связи. Светодиод RDY загорается при завершении декодирования (исправления информации).
P.S. Составил и отладил Paul Kellerman.
Дмитрий В.
03.12.2013, 23:56
Дорогие гуру! Есть вопрос. Почитал на досуге про SQL-инъекции, среди прочего нашел статью по ссылке (http://terasize.blogspot.ru/2011/09/sql-injection.html). Написано просто, даже с картинками. Но вот потом там пример идет - небольшое приложение (http://www.mediafire.com/download/ss83v80xsv4b269/SQLi.zip), где нужно залогиниться с учетом полученных знаний об admin'--. Радостно скачал, но даже дальше 1 уровня продвинуться не могу. А интересно же, и, главное, непонятно, ЧЯДНТ. Везде, где успел прочитать, описывается использование user';--, user' or 1=1-- и т.п., а подобное это приложение не берет. Даже на 1 уровне, который, по идее, для нубов вроде меня.
П.С. Если что - ничего противозаконного ;)
Paul Kellerman
04.12.2013, 18:23
Блин, зря скачал... Реально работающие проги и утилиты редко выкладывают.
А вот всякие вирусы и трояны под видом корма для кулцхакеров - этого полно.
Дмитрий В.
04.12.2013, 18:24
Paul Kellerman, что, троян, really? :(
Paul Kellerman
04.12.2013, 18:30
Очень вероятно. Тем более сам видишь, ни хрена не работает.
В андерграунде даже платного сыра нет, только минное поле.
Дмитрий В.
04.12.2013, 18:33
Paul Kellerman, я антивирем сканировал перед запуском, тот ничего вроде не обнаружил. Я так подумал - раз эта штука не просто "Login failed" на все отвечает, но и SQLем ругается, значит, разгадка должна быть...
Paul Kellerman
04.12.2013, 18:37
В лучшем случае просто глючный и недоделанный нюк.
Степан Капуста
05.12.2013, 13:16
Дмитрий В., тулзени для хака надо самому писать, особенно для такого примитива, как SQL-инъекции.
Дмитрий В.
05.12.2013, 13:17
Степан Капуста, так это там как раз не тулз, а, типа, test yourself на предмет "слабо ли".
Почти в любой организации, включая даже весьма здраво устроенные и управляемые, обязательно найдется чудак на букву "м", которого неясно за что и на работе то держат (как правило, в итоге выясняется что это какой-нибудь двоюродный племянник кого-то из топов).
Вот и в данном случае "был там один".
Из всех его художеств, расскажу про самое эпичное. Однажды он заявил, что "линуксовый malloc глючит" (чем пытался объяснить утечки памяти). И даже приводил ссылку на какой-то форум, где такой же дятел писал, что линуксовый malloc глючит.
Попытки достучаться до разума (уж если бы линуксовый malloc заглючил, об этом узнали бы миллионы людей и очень быстро) были безуспешны.
В итоге мне пришлось в его говнокоде копаться, найти таки ошибки и ткнуть персонажа туда носом.
(вместо постскриптума)
Прихожу к ИТ-директору (дядька лет 50-ти, просит обращаться к нему на "ты", но при такой разнице в возрасте, да и в служебном положении, я всегда автоматом скатываюсь на "Вы").
Я:
- Как я Вам и говорил, XXXX-ов 3.14здит. Сейчас я уже выяснил точно - это в его говнокоде утечки памяти.
ИТ-директор:
- Андрюш, из всего услышанного у меня только к одному слову претензии. (пауза) Не "вам", а "тебе"
Pessimist1980
20.01.2014, 14:07
saovu, видно ИТ-директор нормальный мужик оказался
видно ИТ-директор нормальный мужик оказался
А зачем с ненормальными то работать ?
Тем более что
"Программисты - народ дефицитный, избаловались ..."
Аркадий и Борис Стругацкие.
"Понедельник начинается в субботу".
1964 (!) год
С ненормальными работать - разве только если Родина прикажет.
А "Родина" сейчас занята вообще непойми чем, и внятных приказов не отдает (еще одна тема сведена к ИВС).
Дмитрий В.
10.02.2014, 13:10
Дорогие IT-гуру! Интересно ваше мнение про различные ресурсы для самостоятельного изучения Java. Гуглить обучен (codeacademy, java for beginners, start java и все такое), интересно именно мнение и опыт использования, если есть (возможно, апробация на студентах или знакомых). С учетом, что именно на джаве опыта нет, а нужны именно базовые навыки.
Степан Капуста
10.02.2014, 13:25
Дмитрий В., а точно нужна Джава?
Дмитрий В.
10.02.2014, 13:32
Степан Капуста, в общем да.
Aspirantfm
11.02.2014, 12:36
ну лично мне для изучения Java понадобился один день. но до этого потребовалось несколько больше для изучения С++ и богатый опыт разработки параллельных - распределенных систем.
Ресурсы для гуру Вам не подойдут. учить этот язык для развлекухи - не вижу смысла. Пока не ясна цель, помочь невозможно.
ну лично мне для изучения Java понадобился один день.
+1
В сумме за 2 дня забахал первое приложение для андрюши. Работа с калентарём и брюпупом. Просто смотрел примеры в нете.
Но до этого знал Си и Паскаль. С++ не люблю :shuffle:
Но до этого знал Си и Паскаль. С++ не люблю (ворчливо) "Ваша Галя балувана" (с). А попробуйте-ка то же самое, но только с basic skills а ля Фортран или Ассемблер от ЕС ЭВМ... :p Ладно, пускай Бэйсик - но не Вижуал - в качестве фундамента. :eyes:
Степан Капуста
12.02.2014, 09:49
0647, сначала надо ассемблер выучить, потом — все остальные языки. :-)
сначала надо ассемблер выучить, потом — все остальные языки. :-) Строго говоря, тогда уже надо начинать с машинного кода (кстати, так раньше и учили). ;) Только уровень абстракции получается сильно уж несопоставим - по сравнению с ООП-языками. После машкода Джава покажется ниспровержением основ и богохульством. :o
Степан Капуста
12.02.2014, 15:16
0647, дык есть смысл машинный код и ассемблер вместе учить — они же связаны и зависят от архитектуры.
они же связаны и зависят от архитектуры. Оно то понятно (я в курсе:) ) - я о другом задумался в связи с вопросом относительно изучения Джавы. Когда человек изучает/переходит на другой язык в рамках одной и той же концепции программирования (к примеру, ООП) - это одно. А вот когда он "отряхивает прах с ног" в виде закоренелых приемов и ухваток процедурного программирования - это другое (и тут без разницы, "слазит" он с Ассемблера или SQL).
Это я так, бурчу вслух... :lamer::maniac:
Степан Капуста
12.02.2014, 19:17
0647, ассемблер — ИМХО — еще никому не вредил. :-) Надо знать, как железо работает. Во избежание сюрпризов, так сказать...
ассемблер — ИМХО — еще никому не вредил. :-) Надо знать, как железо работает. Судя по поделиям от "индус-кодинга", не все разделяют Вашу точку зрения, к сожалению.
Степан Капуста
13.02.2014, 09:22
0647, не надо про «индус-кодинг» и «индус-сервисинг» — настрадался в свое время. :-(
Правкомиссия упростила привлечение высококвалифицированных иностранцев в ИТ-сферу (http://www.rbc.ru/rbcfreenews/20140318103106.shtml)Законопроект "О внесении изменения в ст.132 федерального закона "О правовом положении иностранных граждан в РФ" предлагает установить минимальный порог оплаты труда высококвалифицированного специалиста - иностранного гражданина на уровне 1 млн руб.
Существующий порог заработной платы для высококвалифицированных иностранных работников в размере 2 млн руб. в год (около 167 тыс. руб. в месяц) является для ИТ-компаний слишком высоким.
Получается, что теперь отечественные айтишники значительно реже будут просить "отстатыщь", или не отразится?
Интересная статья на сайте CNN была размещена про Штаты.
The myth of America's missing software engineers (http://management.fortune.cnn.com/2013/08/05/immigration-h1b-visas-tech-jobs/)
For the top 10 jobs where H-1B visas are requested, only three do not currently have enough qualified American jobseekers to satisfy demand, according to a new study.
@.n.g.e.r
18.03.2014, 15:03
0647, ассемблер — ИМХО — еще никому не вредил. :-) Надо знать, как железо работает. Во избежание сюрпризов, так сказать...
И потом внезапно на горизонте вырисовываются Эльбрусы со своей темной магией :laugh:
Степан Капуста
18.03.2014, 15:58
@.n.g.e.r, «Эльбрус» — это не тот чудо-проц, разрабы которого обещали переплюнуть Pentium по производительности?..
@.n.g.e.r
18.03.2014, 16:48
@.n.g.e.r, «Эльбрус» — это не тот чудо-проц, разрабы которого обещали переплюнуть Pentium по производительности?..
Да, он самый =). Переплюнуть не переплюнули, но несколько моделей по прошествии полутора десятилетий от заявления появилось.
Степан Капуста
18.03.2014, 18:42
Вау! В железе? Или только проект, который в виде файлов существует?
@.n.g.e.r
18.03.2014, 18:51
Вау! В железе? Или только проект, который в виде файлов существует?
И в железе и с пластиковыми набалдашниками на корпусе :D. Увидел их ассемблер понял, что сцотона рулил Бабаяном и Ко, когда они это делали. :rolleyes:
Степан Капуста
19.03.2014, 09:24
@.n.g.e.r, что, все так плохо?.. mov ax, bx идет через одно место?
Да, он самый =). Переплюнуть не переплюнули, но несколько моделей по прошествии полутора десятилетий от заявления появилось.
Более того, у нас в одном ящике он пытался работать...
Добавлено через 1 минуту
Увидел их ассемблер понял, что сцотона рулил Бабаяном и Ко, когда они это делали. :rolleyes:
Да ладно, могучий практически высокоуровневый язык.
@.n.g.e.r
19.03.2014, 12:25
Более того, у нас в одном ящике он пытался работать...
Да работает, вроде бы. Даже линь на нем пыхтит.
Да ладно, могучий практически высокоуровневый язык.
Мощный - да, суровый - тоже. На этих кирпичах беспощадная специфика, от явного указания АЛУ на котором отрабатывать операцию и жесткой типизации областей памяти/режимов доступа до повсеместного засилия дескрипторов и спец. команд для работы с ними.
Просто с классического ассемблера x86, ppc и даже mips просто так не пересядешь на этот. Придется тонну времени изучать специфику.
А на высоком уровне все прекрасно - компилятор жешь никто не отменял =).
vBulletin® v3.8.8, Copyright ©2000-2025, vBulletin Solutions, Inc. Перевод: zCarot