![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Binary Big Endianness GeneratorsBoost , Spirit 2.5.2 , Binary Generators
|
Имя |
---|
< |
< |
< |
< |
< |
![]() | Note |
---|---|
Генераторы< |
Notation
w
16-битное двоичное значение илиЛенивый аргумент, который оценивает до 16-битного двоичного значения. Это значение всегда интерпретируется с использованием родной эндианности.
dw
32-битное двоичное значение илиЛенивый аргумент, который оценивает до 32-битного двоичного значения. Это значение всегда интерпретируется с использованием родной эндианности.
qw
64-битное двоичное значение илиЛенивый аргумент, который оценивает до 64-битного двоичного значения. Это значение всегда интерпретируется с использованием родной эндианности.
f
Поплавковое двоичное значение илиЛенивый аргумент, который оценивает поплавковое двоичное значение. Это значение всегда интерпретируется с использованием родной эндианности.
d
Двойное двоичное значение илиЛенивый аргумент, который оценивает двойное двоичное значение. Это значение всегда интерпретируется с использованием родной эндианности.
Семантика выражения определяется только там, где она отличается от или не определена в<PrimitiveGenerator
>.
выражение |
Описание |
---|---|
< | Выведите двоичное представление наименее значимых 16 бит обязательного атрибута в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление наименее значимых 32 битов обязательного атрибута в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление наименее значимых 64 битов обязательного атрибута в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление обязательного флоат-атрибута в большое эндиан-представление. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление обязательного двойного атрибута в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление наименее значимых 16 битов непосредственного параметра в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление наименее значимых 32 битов непосредственного параметра в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление наименее значимых 64 битов непосредственного параметра в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление непосредственного поплавкового параметра в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
< | Выведите двоичное представление непосредственного двойного параметра в большом эндианном представлении. Этот генератор никогда не выходит из строя (если основной выходной поток не сообщает об ошибке). |
выражение |
атрибут |
---|---|
< | < |
< | < |
< | < |
< | < |
< | < |
< | < |
< | < |
< | < |
< | < |
< | < |
O(N), где N - число байтов, излучаемых двоичным генератором
![]() | Note |
---|---|
Испытательный ремень для примера (примеров) ниже представлен в разделеОсновные примеры. |
Некоторые включают:
#include <boost/spirit/include/karma.hpp> #include <boost/spirit/include/support_utree.hpp> #include <boost/spirit/include/phoenix_core.hpp> #include <boost/spirit/include/phoenix_operator.hpp> #include <boost/fusion/include/std_pair.hpp> #include <iostream> #include <string>
Некоторые используют декларации:
using boost::spirit::karma::big_word; using boost::spirit::karma::big_dword; using boost::spirit::karma::big_qword;
Основное использование больших двоичных генераторов:
test_binary_generator("\x02\x01", 2, big_word(0x0201)); test_binary_generator("\x04\x03\x02\x01", 4, big_dword(0x04030201)); test_binary_generator("\x08\x07\x06\x05\x04\x03\x02\x01", 8, big_qword(0x0807060504030201LL)); test_binary_generator_attr("\x02\x01", 2, big_word, 0x0201); test_binary_generator_attr("\x04\x03\x02\x01", 4, big_dword, 0x04030201); test_binary_generator_attr("\x08\x07\x06\x05\x04\x03\x02\x01", 8, big_qword, 0x0807060504030201LL);
Статья Binary Big Endianness Generators раздела Spirit 2.5.2 Binary Generators может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Binary Generators ::
реклама |