Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904

Парсинг hex значений

29.06.2018, 05:47. Показов 4760. Ответов 62
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. В ASM файле есть такая строка к примеру
dc.w 0, $8CE, $6AC, $48A, $268, $46, $224, 2 ; earth

Я помещаю это в виде строкового массива
$8CE
$6AC
$48A
$268
$46
$224
2

Короче это цвета. Например 8CE это своеобразная шестнадцетеричная BGR палитра если перевести в RGB то приблизительно будет

255, 219, 146

Так вот в некоторых местах Есть $46 к примеру что будет как $046

Перевод в rgb палитру делается по формуле

r = b * 255 / 14
g = g * 255 / 14
b = r * 255 / 14

Так вот вот в этой своеобразной палитре если цвет начинается на 0 то его не пишут. Только если заканчивается

Как мне сделать парсинг палитры чтобы получить дополнительные 0

Добавлено через 48 минут
В принципе и самому дошло как
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
string GetSEGAColor(string s)
        {
            s = s.Replace("$", "");
 
            var ret = "";
            switch (s.Length)
            {
                case 1:  ret = "00" + s; break;
                case 2:  ret = "0"  + s; break;
                case 3:  ret =        s; break;
                default: ret =      "0"; break;
            }
 
            return ret;
        }
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.06.2018, 05:47
Ответы с готовыми решениями:

Парсинг большого количества hex значений из текстового файла
Нужно из текстового файла прочитать кучу hex целочисленных значений от int16 до uint64, а книжку читать не хочется, но если придётся, то...

Парсинг XML значений для получения значений Double
Всем добрый день. Есть XML файл в котором нужно спарсить значения double. Подскажите пожалуйста как можно спарсить через...

Замена hex значений
Читаю файл вот так: procedure ReadFileAsHex(const AFileName: string; ADestination: TStrings); var fs: TFileStream; buff: Byte; ...

62
 Аватар для belalugoci
475 / 294 / 29
Регистрация: 01.06.2018
Сообщений: 3,676
05.07.2018, 11:09
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Это редактор палитр. Конверт нужен там где это требуется. Например при вводе в текстовое поле чтобы отобразить его в виде цвета рядышком нужно код палитры Sega перевести в палитру понятную C# тобишь в Color ну или если выбор делается через диалоговое окно SEGA палитры то на оборот преобразовать Color в код палитры SEGA
Ну вот я и не вижу где тут String.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Нет.
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Итоговое значене разумеется будет String так как там может быть от 1 до 3 символов
Взаимоисключающие утверждения.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Так я же сказал что при выводе мне нужно от нулей избавится.
откуда в int ведущие нули то возьмутся?

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
В принцыпе можно и int но по факту сейчас шестнадцетеричный код в виде числа нигде не используется.
Ну так если ты везде String конвертируешь постоянно, то конечно int нигде и не используется.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Да и кому это нужно вообще будет.
Ну так вышло, что нужно это всем из-за тебя, но ты не хочешь сделать правильно, ты хочешь string.

Нужна постановка задачи, от начала и до конца, а не намазывание зелёнкой оторванной головы.

Добавлено через 14 минут
для компьютера, оперирующего двоичными данными в любом случае всё равно, как ты себе представляешь содержимое int. Но ты должен всё делать как можно проще для ЦПУ, это позволит тебе избавиться от лишнего кода, конвертаций и т.п. Ускорить работу (не факт что это важно, но душа будет рада). Например
C#
1
2
int a = 5;
a = (a << 1);
и
C#
1
2
int a = 5;
a *= 2;
в конечном итоге компилятор сведет к одному коду (если он не тупой конечно).
А вот
C#
1
2
int a = 5;
a *= Convert.ToInt64("2");
уже лютое извращение и может быть использовано, только если без этого никак не обойтись.
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
05.07.2018, 11:27  [ТС]
Я вот тебя честно говоря не понял. Нужен String потомучто вот код палитры SEGA
Assembler
1
2
3
4
5
6
7
palette_region:
 dc.w     0, $8CE, $6AC, $48A, $268,  $46, $224,    2
 dc.w     0,   $C,   $A,    8,    6,    4,    2,    0
 dc.w     0, $E40, $C40, $A40, $840, $620, $420, $200
 dc.w     0,  $C0,  $A0,  $80,  $60,  $40,  $20,    0
 dc.w     0, $E0E, $C0C, $A0A, $808, $606, $404, $202
 dc.w     0, $EEE, $CCC, $AAA, $888, $666, $444, $222
Собственно сама палитра здесь
0
8CE
6AC
48A
268
46 или 046
224
2 или 002
C или 00C
8 или 008
...

Конечно здесь есть и цыфры но я вывожу в TextBox
Если я присвою к примеру вот это
81214
то как я вам это переведу потом в нормальный вид под SEGA палитру а именно 8CE ведь я перевожу не каждый символ по отдельности а уже склейку всех 3х символов
Тобишь по фашему варианту я выведу склейку всех 3х чисел а символы будут представлены в виде чисел то как я вам потом переведу числа в символы

Короче не понимаю вас

А выводить каждое число отдельно это лишние сложности ведь у меня перевод из Color в SEGAпалитру используется не в 1 месте а множество раз в 10 уж точно

Добавлено через 12 минут
Например вот где используется конверт из Color в SEGA палтру

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 string GetSEGAPalete(int x, int y)
        {
            var xi = x / 16;
            var yi = y / 16;
            var clr = ((Bitmap)pb_SEGAPalette.Image).GetPixel((xi * 16) + 8, (yi * 16) + 8);
            return ColorToSEGAColor(clr);
        }
 
Color GetRGBPalete(int x, int y)
        {
            var xi = x / 16;
            var yi = y / 16;
            var clr = ((Bitmap)pb_SEGAPalette.Image).GetPixel((xi * 16) + 8, (yi * 16) + 8);
            return FromSEGAColor(ColorToSEGAColor(clr));
            
        }
 
void RePaintExamlePic_gamepal(string[] aNewPalette)
        {
            pbExamlePic_gamepal.Image = Image.FromFile(PE.FileNameExamplePalette_GamePal);
 
            for (int i = 0; i < ExemplePalette_gamepal.Length; i++)
                for (int ix = 0; ix < pbExamlePic_gamepal.Width; ix++)
                    for (int iy = 0; iy < pbExamlePic_gamepal.Width; iy++)
                        if (ColorToSEGAColor(((Bitmap)pbExamlePic_gamepal.Image).GetPixel(ix, iy)) == ExemplePalette_gamepal[i])
                            ((Bitmap)pbExamlePic_gamepal.Image).SetPixel(ix, iy, FromSEGAColor(aNewPalette[i]));
        }
И что. И как лучше по вашему. Либо в 3х методах использовать коверт в строку либо в 1 методе сразу конвертировать в строку
на счет return FromSEGAColor(ColorToSEGAColor(clr));

То это для надежности чтобы в итоге получился правильный цвет ведь палитра SEGA куда меньше палитры RGB.
Всего 512 вариантов цветов в SEGA палитры в RGB же
0
 Аватар для belalugoci
475 / 294 / 29
Регистрация: 01.06.2018
Сообщений: 3,676
05.07.2018, 11:40
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Нужен String потомучто вот код палитры SEGA
Ну я могу понять зачем String для "palette_region:" или "dc.w", но остальное это обычные числа.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Конечно здесь есть и цыфры но я вывожу в TextBox
Выводи, только зачем string использовать в работе, ведь textBox нужен только для отображения.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
то как я вам это переведу потом в нормальный вид под SEGA палитру
Как появится необходимость в текстовых данных - переводите в текст.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Тобишь по фашему варианту я выведу склейку всех 3х чисел а символы будут представлены в виде чисел то как я вам потом переведу числа в символы
Не совсем понял в чем тут проблема.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
А выводить каждое число отдельно это лишние сложности ведь у меня перевод из Color в SEGAпалитру используется не в 1 месте а множество раз в 10 уж точно
Ничего не понял.

Напишите логику вашей программы, а лучше, если это не секрет, дайте проект, мы поглядим.

Добавлено через 4 минуты
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Например вот где используется конверт из Color в SEGA палтру
Судя по коду - нигде
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
05.07.2018, 13:14  [ТС]
Цитата Сообщение от belalugoci Посмотреть сообщение
Ну я могу понять зачем String для "palette_region:" или "dc.w", но остальное это обычные числа.
A это симол а не число
С это символ а не число
E это символ а не число

Может вы подскажите как вы себе представляете возвращать число вместо символов. Вот так?
C#
1
2
3
4
5
6
7
int ColorToSEGAColor(Color c)
        {
            var b = ((int)Math.Round(((double)c.B * 7.0 / 255.0)) * 2);
            var g = ((int)Math.Round(((double)c.G * 7.0 / 255.0)) * 2);
            var r = ((int)Math.Round(((double)c.R * 7.0 / 255.0)) * 2);
            return  b + g + r;
        }
Бред получится.

Цитата Сообщение от belalugoci Посмотреть сообщение
Напишите логику вашей программы, а лучше, если это не секрет, дайте проект, мы поглядим.
Попрошу сильно не судить увы писал как умел но по факту я сильно не хотел заморачиваться
И еще проект на 2017 студии.

По факту там не 1 редактор а 3 редактора для 3х разных палитр. И для каждого используется свой набор компонентов хоть даже они и повторяются точнее выглядят также.
Вложения
Тип файла: zip DH.zip (1.86 Мб, 3 просмотров)
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
05.07.2018, 13:32  [ТС]
Цитата Сообщение от belalugoci Посмотреть сообщение
Судя по коду - нигде
Как это негде. А это что по твоему

C#
1
2
3
4
5
6
7
8
9
10
11
string ColorToSEGAColor(Color c)
        {
            var b = ((int)Math.Round(((double)c.B * 7.0 / 255.0)) * 2).ToString("X");
            var g = ((int)Math.Round(((double)c.G * 7.0 / 255.0)) * 2).ToString("X");
            var r = ((int)Math.Round(((double)c.R * 7.0 / 255.0)) * 2).ToString("X");
            var bgr = "";
            bgr += (b != "0") ? b : "";
            bgr += (g != "0") ? b : "";
            bgr += r;
            return  bgr;
        }
Конверт из Color в палитру SEGA
Color можно представить как ARGB

Тоесть В Color к примеру
255, 72, 36, 36
В палитре SEGA (хотя такто в файле ASM там указаны смещения а не сама палитра. Но эти смещения и указывают на цвет в палитре игры пристаки SEGA)
224

И по ваше это одно и тоже. Ну судя по данной фразе да. Хорошо это не конвертация в палитру игры. Это получения смещения для дизасеблированного бинарного файла палитры

Добавлено через 5 минут
Цитата Сообщение от belalugoci Посмотреть сообщение
Напишите логику вашей программы, а лучше, если это не секрет, дайте проект, мы поглядим.
А вообще такто у вас программа работать не будет. Она требует DuneHack который не и дет вместе с программой

Вот сам хак

http://www.razor-missions.16mb.com/content/r81c.7z
0
Эксперт .NET
 Аватар для Usaga
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,046
05.07.2018, 18:36
Alexandr_7, вы уверены, что данный код

C#
1
2
3
            bgr += (b != "0") ? b : "";
            bgr += (g != "0") ? b : "";
            bgr += r;
не фигня? Ладно конкатенация строк (вы это любите, я посмотрю), но что будет, если зелёный цвет будет равен нулю, а синий и красный - нет?
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
05.07.2018, 19:08  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
не фигня? Ладно конкатенация строк (вы это любите, я посмотрю), но что будет, если зелёный цвет будет равен нулю, а синий и красный - нет?
Да это ты верно заметил. Надо каккто по другому

Может так

C#
1
2
3
bgr += (b != "0") ? b : "";
            bgr += ((b != "0") && (g != "0")) ? b : "";
            bgr += r;
Добавлено через 6 минут
Цитата Сообщение от Usaga Посмотреть сообщение
Ладно конкатенация строк (вы это любите, я посмотрю)
Ну я же сказал проект можно оптимизировать а по поводу этого кусочка то напрямую с return нельзя будет такие условия провернуть. Можно только так сделать

C#
1
2
3
4
5
6
7
8
string ColorToSEGAColor(Color c)
        {
            var bgr = "";
            bgr += (((int)Math.Round(((double)c.B * 7.0 / 255.0)) * 2).ToString("X") != "0") ? ((int)Math.Round(((double)c.B * 7.0 / 255.0)) * 2).ToString("X") : "";
            bgr += (((int)Math.Round(((double)c.G * 7.0 / 255.0)) * 2).ToString("X") != "0") ? ((int)Math.Round(((double)c.G * 7.0 / 255.0)) * 2).ToString("X") : "";
            bgr += ((int)Math.Round(((double)c.R * 7.0 / 255.0)) * 2).ToString("X");
            return  bgr;
        }
Ничего не изменится разве что 3 лишних локальных переменных не будет но вместо этого будет 2 раза возникать ((int)Math.Round(((double)c.B * 7.0 / 255.0)) * 2).ToString("X") и только больше кода. Не люблю удлинять код хотя так как язык программирования на 100 я не знаю. По факту я просто не смогу всех его возможностей выучить только самые основы и продолжаю учится на своих ошибках
0
Эксперт .NET
 Аватар для Usaga
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,046
05.07.2018, 19:42
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Может так
Нет. Цветовая компонента определяется её положением в коде цвета пикселя. Вам надо (а надо ли?) удалять только ведущие нули. Если зелёный цвет тёмный (0), то так и надо писать: B0R.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Можно только так сделать
А может иначе:?

C#
1
2
3
4
5
            const double multFactor = 14.0 / 255.0;
            var b = (int)Math.Round((double)c.B * multFactor) ;
            var g = (int)Math.Round((double)c.G * multFactor);
            var r = (int)Math.Round((double)c.R * multFactor);
            return  $"{b:X}{g:X}{r:X}";
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
05.07.2018, 19:50
А еще так можно, сразу без нулей в начале будет...
C#
1
2
3
4
5
6
                const double multFactor = 14.0 / 255.0;
                var b = (int)Math.Round((double)c.B * multFactor);
                var g = (int)Math.Round((double)c.G * multFactor);
                var r = (int)Math.Round((double)c.R * multFactor);
                var sega = b * 256 + g * 16 + r;
                return $"{sega:X}";
1
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
05.07.2018, 19:57  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Нет. Цветовая компонента определяется её положением в коде цвета пикселя. Вам надо (а надо ли?) удалять только ведущие нули. Если зелёный цвет тёмный (0), то так и надо писать: B0R.
Ведущие нули можно и не писать. Даже взять тотже CheatEngine там тоже если дело доходит до шестнадцетеричных значений это в принцыпе так Асемблер устроен. Он ведущие нули читать не станет. Так не лучше ли облегчить ему работу и писать ведущие нули
$ тоже можно не возвращать. TextBox и так его добавит если это требуется.

Цитата Сообщение от Someone007 Посмотреть сообщение
А еще так можно, сразу без нулей в начале будет...
Спасибо. Не знал что ToString("X"); можно писать как {sega:X} да и похоже StringFormat() писать не обязательно
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
05.07.2018, 20:00
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Спасибо. Не знал что ToString("X"); можно писать как {sega:X} да и похоже StringFormat() писать не обязательно
Это в C# 6 добавили, называется интерполяция строк.
0
 Аватар для belalugoci
475 / 294 / 29
Регистрация: 01.06.2018
Сообщений: 3,676
06.07.2018, 05:05
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
A это симол а не число
С это символ а не число
E это символ а не число
В шестнадцатиричной системе это цифра. Или вы римлянам станете доказывать что XI не число, а буквы?

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Может вы подскажите как вы себе представляете возвращать число вместо символов. Вот так?
Поставьте задачу, я напишу код. Реверскодингом я плохо владею.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Бред получится.
Ну если напишете бред, то несомненно он и получится.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Попрошу сильно не судить увы писал как умел но по факту я сильно не хотел заморачиваться
И еще проект на 2017 студии.
Ну я сам профессиональный говнокодер на C#, так как последний раз кодил в 2001 году на Делфи. В выходные посмотрю ваш проект.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Как это негде. А это что по твоему
Какой-то костыль.

Цитата Сообщение от Alexandr_7 Посмотреть сообщение
А вообще такто у вас программа работать не будет. Она требует DuneHack который не и дет вместе с программой
Ок. Но мне не сам запуск нужен, мне нужен код, цельный, чтобы просто видеть чем вы изначально оперируете.
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
06.07.2018, 21:00  [ТС]
Цитата Сообщение от Someone007 Посмотреть сообщение
const double multFactor = 14.0 / 255.0;
* * * * * * * * var b = (int)Math.Round((double)c.B * multFactor);
* * * * * * * * var g = (int)Math.Round((double)c.G * multFactor);
* * * * * * * * var r = (int)Math.Round((double)c.R * multFactor);
* * * * * * * * var sega = b * 256 + g * 16 + r;
* * * * * * * * return $"{sega:X}";
Формула неправильная. Тут формула какая?
hb * 255 / 14
А у вас
hb * (255 / 14)
Это не одно и тоже

Добавлено через 2 минуты
Я только знаю что вот эта код перестал работать
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
oid RePaintExamlePic_gamepal(string[] aNewPalette)
        {
            pbExamlePic_gamepal.Image = Image.FromFile(PE.FileNameExamplePalette_GamePal);
 
            for (int i = 0; i < ExemplePalette_gamepal.Length; i++)
                for (int ix = 0; ix < pbExamlePic_gamepal.Width; ix++)
                    for (int iy = 0; iy < pbExamlePic_gamepal.Width; iy++)
                    {
                        var sclr = ColorToSEGAColor(((Bitmap)pbExamlePic_gamepal.Image).GetPixel(ix, iy));
                        if (sclr == ExemplePalette_gamepal[i])
                            ((Bitmap)pbExamlePic_gamepal.Image).SetPixel(ix, iy, FromSEGAColor(aNewPalette[i]));
                    }
        }
А раньше работал.
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
06.07.2018, 21:04
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Формула неправильная. Тут формула какая?
hb * 255 / 14
А у вас
hb * (255 / 14)
Это не одно и тоже
Вы не поверите, но результат получается одинаковый.
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
06.07.2018, 21:06  [ТС]
Возможно дело и не в этом но метод
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
void RePaintExamlePic_gamepal(string[] aNewPalette)
        {
            pbExamlePic_gamepal.Image = Image.FromFile(PE.FileNameExamplePalette_GamePal);
 
            for (int i = 0; i < ExemplePalette_gamepal.Length; i++)
                for (int ix = 0; ix < pbExamlePic_gamepal.Width; ix++)
                    for (int iy = 0; iy < pbExamlePic_gamepal.Width; iy++)
                    {
                        var sclr = ColorToSEGAColor(((Bitmap)pbExamlePic_gamepal.Image).GetPixel(ix, iy));
                        if (sclr == ExemplePalette_gamepal[i])
                            ((Bitmap)pbExamlePic_gamepal.Image).SetPixel(ix, iy, FromSEGAColor(aNewPalette[i]));
                    }
        }
перекрашивал нормально все.
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
06.07.2018, 21:08
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
перекрашивал нормально все
Ну так запустите отладчик и посмотрите почему не работает...
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
06.07.2018, 21:12  [ТС]
Кажется я понял в чем дело. Лишние нули. Просто в Example палитре нужно убрать лишние нули.

Добавлено через 1 минуту
Да именно в этом и была причина. Прошу прощения за обвенения код полностью работает
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
06.07.2018, 23:38
Вы кстати уверены что формула 14/255, а не 15/255? Потому что с первым вариантом цвет $FFF криво переводится в RGB. Или такой цвет не возможен?
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
07.07.2018, 19:06  [ТС]
Цитата Сообщение от Someone007 Посмотреть сообщение
Вы кстати уверены что формула 14/255, а не 15/255? Потому что с первым вариантом цвет $FFF криво переводится в RGB. Или такой цвет не возможен?
Такой цвет невозможен.
0
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,904
07.07.2018, 19:21  [ТС]
Вот палитра игры:

Представляем что 8 квадратов идут в 1 ряд.
Каждый квадрат состоит из 8 x 8 квадратиков.
Нумерация идет по верртикали
Тобишь
Вот пример нумерации 1 квадратика:
Code
1
2
3
4
5
6
7
8
0 20 40 60 80 A0 C0 E0
2 22 42 62 82 A2 C2 E2
4 24 44 64 84 A4 C4 E4
6 26 46 66 86 A6 C6 E6
8 28 48 68 88 A8 C8 E8
A 2A 4A 6A 8A AA CA EA
C 2C 4C 6C 8C AC CC EC
E 2E 4E 6E 8E AE CE E8
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.07.2018, 19:21

Редактирование hex значений в файле
Всем привет. Не знаю как сделать то что на 2 скриншотах. На 1 до, на втором - после. В какую сторону копать? А то руками замучился...

Редактор hex-значений нетипизированного файла через Memo
Хочу написать редактор такого вида: Открываем нетипизированный файл (20 мб) в Memo (или что-то другое, что будет работать с таким...

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

[Dendy] Увеличить начальную скорость падения блоков в tetris.1989 (редактирование значений в HEX редакторе)
Доброго дня! Когда-то мне здесь помогли написать диплом. Теперь снова обращаюсь к Вам. Играю в классический tetris 1989.nes от денди, и...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru