Форум программистов, компьютерный форум, киберфорум
Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 14.10.2014
Сообщений: 75

Определите что за бейсик?

15.12.2016, 11:30. Показов 835. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

есть код:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Function CountDegist(tmpDump As UInteger Ptr, tmpBinary As UByte Ptr) As UInteger
    Dim  As UInteger tmpResult, tmpTimer =&hff,a=0
    tmpTimer = &hffffffff
    For i As Integer = 0 To 223
        tmpResult = *(tmpBinary + i)
        tmpResult = tmpResult Xor tmpTimer
        tmpResult = tmpResult And &hFF
        tmpResult = *(tmpDump+255-tmpResult)
        tmpTimer Shr = 8
        tmpTimer = tmpTimer And &hffffff
        tmpResult = tmpResult Xor tmpTimer
        tmpTimer = tmpResult
    Next
    Return tmpResult
 
End Function
Кто то может его расшифровать на сишник или сказать в каком бейсике это компилировать ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.12.2016, 11:30
Ответы с готовыми решениями:

Диалект языка Бейсик - Spectrum-Бейсик
Приветствую всех. Недавно в сети нашла книгу: "Как написать игру для ZX Spectrum"/ А. Купальцевич, И. Капульцевич, А. Евдокимов. - 2-е...

Что делает код описанный в теме? работа в бейсик с com портом
10 OPEN "COM1: 9600, N, 8, 1" AS #1 20 IF LOC(1) = 0 THEN 60 30 A$ = INPUT$(1, 1) 40 PRINT A$; '' "; 50 GOTO 20 60 B$ =...

Считая, что мужчин и женщин одинаковое число, определите, что дальтоником оказывается мужчина
4) Известно, что 5% мужчин и 0.25 всех женщин дальтоники. Считая, что мужчин и женщин одинаковое число, определите, что дальтоником...

4
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
15.12.2016, 14:25
Цитата Сообщение от V2oD2o Посмотреть сообщение
каком бейсике это компилировать ?
Судя по типу UInteger похоже на семейство VB.NET, значит нужна Visual Studio 20**
1
Заблокирован
16.12.2016, 09:42
Судя по
Цитата Сообщение от V2oD2o Посмотреть сообщение
tmpDump As UInteger Ptr
и
Цитата Сообщение от V2oD2o Посмотреть сообщение
Dim As UInteger tmpResult
это скорее free-basic, но никак не VB.NET
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
16.12.2016, 12:38
Цитата Сообщение от Shersh Посмотреть сообщение
скорее free-basic
Может и так.
В любом случае не VB6
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
16.12.2016, 17:23
Это FreeBASIC.

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

Попробую растолковать

UInteger = 32/64 бита в зависимости от целевой архитектуры.
Функция CountDegist возвращает значение типа UInteger, в неё уходят 2 параметра: tmpDump, tmpBinary
первый указатель на UInteger второй на UByte, UByte - это беззнаковый байт.
Далее резервируется tmpResult, tmpTimer, a. Все резервируются как UInteger
В начале функции:
tmpTimer = ffffffff (в шестнадцатеричной системе)
a = 0
tmpResult = 0

Далее цикл проходит от 0 до 223 (включительно), счётчиком цикла явл. переменная i
вот эта строка
tmpResult = *(tmpBinary + i)
означает, что в переменную tmpResult будут помещены данные соотв. типа tmpResult
из памяти с указателя tmpBinary, подвинутого на кол-во шагов i, каждый шаг ровняется
по длине типу данных переменной tmpBinary.

Вот эти две строки предельно понятны и в толковании не нуждаются:
tmpResult = tmpResult Xor tmpTimer
tmpResult = tmpResult And &hFF

вот эта строка
tmpResult = *(tmpDump+255-tmpResult)
означает, что в переменную tmpResult будут помещены данные соотв. типа tmpResult
из памяти с указателя tmpDump, подвинутого на 255 шагов вперёд и tmpResult шагов назад,
каждый шаг ровняется по длине типу данных переменной tmpDump.

Вот эта строчка
tmpTimer Shr = 8
означает
tmpTimer = tmpTimer Shr 8

Вот эти три строки предельно понятны и в толковании не нуждаются:
tmpTimer = tmpTimer And &hffffff
tmpResult = tmpResult Xor tmpTimer
tmpTimer = tmpResult


вот эта строка
Return tmpResult
возвращает значение данной функции и передаёт управление обратно в то место, откуда
функция была вызвана.

На 2-й строчке вот это в коде лишнее:
=&hff

Вообще ещё проверю правильно ли всё расписал, давно с указателями не работал в FB
уже точно не помню, по идее всё правильно, но код какой-то левый судя по строчке 8,
ну или очень хитрожопый.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.12.2016, 17:23
Помогаю со студенческими работами здесь

Определите что за сортировка
Это сортировка вставками или выбором #include <iostream> #include <time.h> #include <conio.h> using namespace std; int main (){ ...

Определите что делает данная программа
Объясните пожалуйста что делает данная программа. нужно описать каждое действие. predicates F(integer,integer) goal...

Определите, что выведет следующая программа на экран
Определите, что выведет следующая программа на экран. Максимально подробно объясните свой ответ var a , b : i n t e g e r ; f u n c...

Определите, что выведет следующая программа на экран
Определите, что выведет следующая программа на экран. var a , z , x , y , p : integer ; procedure p2 (var y : integer ; var z : integer...

Определите вероятность того, что в семье один мальчик
"В семьях, имеющих по четыре ребенка, вероятности рождения девочки или мальчика считаются равными. Определите вероятность того, что в такой...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru