![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
![]() |
TarasBer |
![]()
Сообщение
#1
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
Файл описания:
Файл реализации:
Проблемы: 1. Как делать битовые сдвиги? Деление на степень двойки это как-то неправильно в данном случае. 2. m8Arr по размеру никак не хочет совпадать с TData Сообщение отредактировано: TarasBer - 17.02.2011 15:58 -------------------- |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата Как делать битовые сдвиги? Деление на степень двойки это как-то неправильно в данном случае. Битовые сдвиги реализуются не операторами, а функциями. В пакете Interfaces есть:function Shift_Left (Value : Unsigned_n; Amount : Natural) return Unsigned_n; Цитата m8Arr по размеру никак не хочет совпадать с TData TData'Size - это размер TData в битах |
TarasBer |
![]()
Сообщение
#3
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
> TData'Size - это размер TData в битах
То есть дело не в том, что массив байтов забыл упаковаться, он упаковывается сам? Кстати, Table_CRC16 в данном случае считается компилятором или программой при старте? Сообщение отредактировано: TarasBer - 17.02.2011 16:52 -------------------- |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Цитата То есть дело не в том, что массив байтов забыл упаковаться, он упаковывается сам? В данном конкретном случае pragma Pack может отсутствовать, компилятор сам догадается, что надо сделать.Цитата Table_CRC16 это что? CRC16_Table? При старте программы. Еще раз повторяю: constant не гарантирует вычисления на этапе компиляции. Constant гарантирует только иммутабельность (неизменность) объекта. Если для вычисления значения надо вызвать функцию, то это произойдет на этапе запуска программы. Если можно вычислить константу при компиляции - она будет вычислена при компиляции. |
![]() ![]() |
![]() |
Текстовая версия | 22.07.2025 2:22 |