Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Garry_Galler 7 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 Kirag понял тебя. Спасибо за интересный способ :ny_thumbsup: попробую применить. Всех с Наступившим Годом белого Тигра! Gonarh что ж я так и предполагал изначально. только тут возникает один вопрос - а как скажем выводится инфа в рейтинг - где меняется кол-во трупаков на совести Меченого? Ссылка на комментарий
EQUALISER_SPB 0 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 можно ли прописать файлу другую дирректорию иконок,ну например чтобы он брал иконку не из ui_icon_equipment,а из,ну наприме ui_icon_equipment1? а то сколько я не парился с фотошопом,все никак не получается создать новую иконку(видать фотошоп паленый попался) Ссылка на комментарий
Monnoroch 6 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 Кто-нибудь знает,что происходит,когда скрипт считает математические действия? то есть 2+3 или 4*2 я пишу в скрипте - как это обрабатывает компиллятор? Ссылка на комментарий
Gonarh 5 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 (изменено) можно ли прописать файлу другую дирректорию иконок,ну например чтобы он брал иконку не из ui_icon_equipment,а из,ну наприме ui_icon_equipment1? можно Кто-нибудь знает,что происходит,когда скрипт считает математические действия? скрипт ничерта не считает, это текстовый файлег, который парсится xrLua.dll, щас глянул список экспортируемых функций в данной библе, там их не меньше 400 Изменено 2 Января 2010 пользователем Gonarh 118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105 Ссылка на комментарий
Monnoroch 6 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 Gonarh, что происходит в движке,когда он в скрипте находит,математические действия. Я это хотел сказать. ты же сам знаешь,что я знаю,что это просто текст Ссылка на комментарий
EQUALISER_SPB 0 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 Gonarh,а как,если не секрет?+ Ссылка на комментарий
Gonarh 5 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 (изменено) Gonarh, что происходит в движке,когда он в скрипте находит,математические действия. Я это хотел сказать. ты же сам знаешь,что я знаю,что это просто текст вот здесь написано как добавить в свою софтину поддержку интерпретатора луа, думаю будет понятно Изменено 2 Января 2010 пользователем Gonarh 118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105 Ссылка на комментарий
Malandrinus 615 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 что происходит в движке,когда он в скрипте находит,математические действия. Это зависит от типа переменной. Если встроенный арифметический тип, то тупо считает, вроде как приводя к более сложному типу из двух. Точное поведение зависит от реализации. Если это пользовательский тип, то при наличии метатаблицы с переопределённой арифметической операцией переправит действие этой операции (для vector или CTime к примеру). При отсутствии - будет ошибка "no such operator defined" Это всё в принципе заморочки Lua. В его документации всё и описано. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Monnoroch 6 Опубликовано 2 Января 2010 Поделиться Опубликовано 2 Января 2010 (изменено) malandrinus, так. Можно попроще,пожалуйста? Вот пишу я function plus(a,b ) return a+b end что происходит когда я вызываю plus(2,12) например?сам процесс складывания - что он из себя представляет? меня интересует именно механизм складывания чисел - что компиллятор делает,имея 2 числа и задачу их сложить. Изменено 2 Января 2010 пользователем Monnoroch Ссылка на комментарий
Malandrinus 615 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 Monnoroch, интерпретатор (здесь не компилятор, а именно интерпретатор) переводит высокоуровневую операцию в последовательность машинных кодов. В данном случае это заключается в вызове некой внутренней функции, которая собственно и выполнит сложение. Сама функция представляет собой последовательность инструкций процессора, которая делает примерно следующее: - Читает из стека аргументы в машинные регистры - выполняет собственно сложение. Обычно для этого есть инструкция типа "сложить значение из регистра А со значением из регистра Б и поместить обратно в А" - возвращает результат тем или иным образом в зависимости от соглашения о вызовах. Например через определённый регистр. Ну и всё. Эти инструкции выполняются уже непосредственно процессором. Ниже уровня для программиста нету =) Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Monnoroch 6 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 (изменено) - выполняет собственно сложение. Обычно для этого есть инструкция типа "сложить значение из регистра А со значением из регистра Б и поместить обратно в А" Вот это мне и надо...То есть это непосредственно команда процессора? Ты не знаешь,в таком случае,как устроена эта "сложить" в процессоре? Я сам могу в уме или на бумаге складывать: -столбиком -десятично (есть вариации) А как складывает процессор? Изменено 3 Января 2010 пользователем Monnoroch Ссылка на комментарий
RvP 1 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 Monnoroch, процесор складывает в бинарном коде через розрядню сетку Vita sine libertate, nihil Vita sine litteris - mors est Ссылка на комментарий
Monnoroch 6 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 (изменено) RvP, а по-русски? Предположим, что необходимо сложить два числа 5 и 4. Что же происходит в компьютере, когда поступает подобная команда? Давайте рассмотрим подобную ситуацию. Для начала необходимо перевести 5 и 4 в двоичную систему исчисления(так как компьютер ничего кроме нее не понимает). 5(в 10-ой)=0101(в 2-ой) и 4(в 10-ой)=0100(в 2-ой). Эта информация храниться в оперативной памяти до тех пор, пока не поступит команда их сложить. После того, как настало время произвести операцию, система заранее посылает эти два числа и код инструкции которую необходимо произвести(в нашем случае сложение) из оперативной памяти в кэш процессора. Там по истечении некоторого времени они ждут своей очереди поступления на конвейер. Когда очередь наступила, число 0101(5) заносится в один регистр, число 0100(4) во второй и поступает инструкция сложить. Два числа складываются, получается результат 1001(9), который заносится в третий регистр, и затем значение регистра отсылается обратно в оперативную память в определенную ячейку. Вот мне эта инструкция и интересно как действует. И насколько долго она работает. Практический интерес в том - что будет обрабатываться быстрее - перевод из строки в число+сложение+перевод обратно в строку или таблица соответствий то есть функция,переводящая "2"+"2" в "4" для ЦИФЕР. Только не надо говорить,что это занимает пол миллисекунды,дело не в этом.Мне сейчас именно важна скорость,а не сложность кода. Изменено 3 Января 2010 пользователем Monnoroch Ссылка на комментарий
Malandrinus 615 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 Monnoroch, сумматор там стоит. Это такое электронное устройство. На входы подаёшь два двоичных числа, на выходных контактах через некоторое время получаешь результат. Посмотри здесь, если сильно интересно, как он устроен. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
RvP 1 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 Monnoroch, странно что вы это не учили мы это по ШКИ проходили: рисуется розрядная сетка(аля таблицо с 2мя строками и количеством столбцов равным розрядности машины) и туда справа-налево пишем наши числа в 2-ой системе счисления. пустые места заполняем нулями. сама операция сложения в проце выполняется примитивно- просто сложением (а вот с отниманием все намного интерестней)). по сути он складывает столбиком, но в бинарном коде. тоже ньюанс: не видел что б проц или програма нормально считали числа с дробной частью(десятичная форма). в проце такого нету, тут уже надо самому как то(тоесть он то посчитает, но сам перевод дробной части в 2й код как я понял для него затруднителен) Vita sine libertate, nihil Vita sine litteris - mors est Ссылка на комментарий
Monnoroch 6 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 (изменено) Ммм,если кто программировал на паскале,не можете подсказать тогда,что будет быстрее обсчитываться: inttostr(strtoint('2')+strtoint('2')); // стандартные функции или function plus(a,b:char):string; begin if (a = '2') and (b = '2') then result:='4' elseif...//тут условия для всех комбинаций цифр (да,81 штука,а что делать) end; Изменено 3 Января 2010 пользователем Monnoroch Ссылка на комментарий
RvP 1 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 Monnoroch, напиши в паскале и скомпилируй. тебе покажет обьем памяти и время. смотри по нему Vita sine libertate, nihil Vita sine litteris - mors est Ссылка на комментарий
Malandrinus 615 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 Ммм,если кто программировал на паскале,не можете подсказать тогда,что будет быстрее обсчитываться: Второй способ с кучей if-ов порочный в принципе. И скорее всего будет намного медленней. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Monnoroch 6 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 (изменено) RvP, нельзя.слишком короткое -19 знаков точность и все равно 0 пишет. Добавлено через 1 мин.: malandrinus, спасибо.я просто думал - может оно логические выражения быстрее выполняет.... ===== хе-хе.А вот по итогам 10 миллионов вычислений быстрее мой способ гдето 0.1 секунды.однако вот так Изменено 3 Января 2010 пользователем Monnoroch Ссылка на комментарий
Malandrinus 615 Опубликовано 3 Января 2010 Поделиться Опубликовано 3 Января 2010 Monnoroch, у тебя запредельно медленное преобразование строк в числа. Учитывая, что это даже не строки, а одиночные символы (если я верно понял), то сконвертировать их в соответствующие числа можно на порядок быстрее, используя коды символов. Функции для этого есть. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти