hohserg 197 Опубликовано: 15 января, 2021 (изменено) Что это Маленькая библиотека для работа с последовательностями бит Как юзать local bit_array = require("bit_array") --Создаем массив битов разметом 100, заполненный единицами local a = bit_array.create{sizeInBits = 100, fill = 1} --можно еще так и так local a = bit_array.create(100, 1) local a = bit_array.create(100, true) --Создаем массив битов разметом 100, заполненный нулями local a = bit_array.create{sizeInBits = 100, fill = 0} --можно еще так и так local a = bit_array.create{sizeInBits = 100} local a = bit_array.create(100) local a = bit_array.create(100, false) --Устанавливаем первый бит на 1 a:set(1, true) --можно еще так a:set(1, 1) --Устанавливаем первый бит на 0 a:set(1, false) --можно еще так a:set(1, 0) --Получаем значение второго бита local second = a:get(2) --Схватываем ошибку выхода за пределы массива a:set(101, true) a:get(101) --Получаем количество единичных битов local ones = a:countOf(true) --можно еще так a:countOf(1) --Получаем количество нулевых битов local zeros = a:countOf(false) --можно еще так a:countOf(0) --Устанавливаем биты одного массива другому начиная с индекса 3 local b = bit_array.create(10, 1) a:setArray(3, b) --Создаем новый массив, который содержит биты из массива а, с первого по девятый local c = bit_array.createBasedOn{array = a, fromIndex = 1, toIndex = 9} --Преобразовываем в строку local stringRepr = a:toString() --Создаем из строки local b = bit_array.fromString(stringRepr) Исходный код https://github.com/hohserg1/OpenComputersPrograms/blob/master/simple_libs/bit_array.lua Команда для скачивания wget https://raw.githubusercontent.com/hohserg1/OpenComputersPrograms/master/simple_libs/bit_array.lua /home/lib/bit_array.lua Изменено 15 января, 2021 пользователем hohserg 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hohserg Автор темы 197 Опубликовано: 15 января, 2021 Обновлено: добавлена возможно конвертировать массив в строку и назад Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах