Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Как перевести число в строку бит?  (Прочитано 8227 раз)

Teodor

  • Старожил
  • ****
  • Сообщений: 256
    • Просмотр профиля
Re: Как перевести число в строку бит?
« Ответ #15 : 24 Января 2017, 18:48:20 »
А сравнивать переменные можно и без массивов, напрямую. Или Вы говорите про переменные-массивы на OPC-сервере?
нет, нет... Именно так. Имелось в виду, что переменные на опс могут быть локальными, или из базы подтянутыми, а не грузить полудохлый контроллер.

Xskif

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: Как перевести число в строку бит?
« Ответ #16 : 24 Мая 2021, 06:05:32 »
Я просто в шоке, почему тут всё так сложно   :)
Достаточно первое число сделать первым элементом массива, а остатки от деления записывать в следующие элементы. И так до тех пор, пока остаток не станет меньше основания системы счисления. И это верно не только для двоичных, а для всех позиционных систем счисления. Если есть дробная часть, то её переводить отдельно.
Алгоритм:
1)Делим нужное число на основание
2) Делим остаток 1 на основание..
3)Делим остаток 2 на основание..
....
N)Остаток N< основания - записываем число снизу вверх
Вот пример реализации на JS: https://tvoyapecarnya.ru/informaics/sistemy-ischisleniya/pozitsionnyesistemyschisleniya/dvoichnaya-sistema-ischisleniya/kak-perevodit-v-dvoichnuyu-sistemu

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Как перевести число в строку бит?
« Ответ #17 : 24 Мая 2021, 17:14:41 »
Xskif, это старая тема от 24 января 2017 года.
А 19 июля 2017 года в скаду встроена готовая функция IntToBin, которая описана в руководстве по ссылке.