shifter.html 6.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <html>
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  4. <title>Сдвигатель</title>
  5. </head>
  6. <body bgcolor="FFFFFF">
  7. <h1><img align="center" src="../../../../en/icons/shifter.gif" width="32" height="32">
  8. <em>Сдвигатель</em></h1>
  9. <p><table>
  10. <tr><td><strong>Библиотека:</strong></td>
  11. <td><a href="index.html">Арифметика</a></td></tr>
  12. <tr><td><strong>Введён в:</strong></td>
  13. <td>2.3.0</td></tr>
  14. <tr><td valign="top"><strong>Внешний вид:</strong></td>
  15. <td valign="top"><img src="../../../../en/img-libs/shifter.png" width="44" height="42"></td></tr>
  16. </table></p>
  17. <h2>Поведение</h2>
  18. <p>Этот компонент включает два входа: <var>данные</var> и <var>дистанция</var>, и имеет один выход, значение на котором - результат сдвига <var>данные</var> на <var>дистанция</var> позиций. И <var>данные</var>, и выход имеют одинаковое количество битов. Компонент поддерживает следующие типы сдвига:</p>
  19. <ul>
  20. <li>Логический левый: все биты в <var>данные</var> сдвигаются вверх на <var>дистанция</var> позиций, а нижние <var>дистанция</var> позиций заполняются нулями. Например, 11001011 логически сдвинутое влево на два - это 00101100. (Две верхние единицы потеряны.)</li>
  21. <li>Логический правый: все биты в <var>данные</var> сдвигаются вниз на <var>дистанция</var> позиций, а верхние <var>дистанция</var> позиций заполняются нулями. Например, 11001011 логически сдвинутое вправо на два - это 00110010. (Две нижние единицы потеряны.)</li>
  22. <li>Арифметический правый: все биты в <var>данные</var> сдвигаются вниз на <var>дистанция</var> позиций, а верхние <var>дистанция</var> позиций заполняются повторениями самого верхнего бита в <var>данные</var>. Например, 11001011 арифметически сдвинутое вправо на два - это 11110010.</li>
  23. <li>Циклический левый: все биты в <var>данные</var> сдвигаются вверх на <var>дистанция</var> позиций, а верхние <var>дистанция</var> позиций прокручиваются вниз. Например, 11001011 циклически сдвинутое влево на два - это 00101111.</li>
  24. <li>Циклический правый: все биты в <var>данные</var> сдвигаются вниз на <var>дистанция</var> позиций, а нижние <var>дистанция</var> позиций прокручиваются вверх. Например, 11001011 циклически сдвинутое вправо на два - это 11110010.</li>
  25. </ul>
  26. <p>Обратите внимание, что если <var>дистанция</var> содержит плавающие значения или значения ошибки, то выход полностью состоит из значений ошибки, поскольку нет способа догадаться, на сколько сдвигать входное значение.</p>
  27. <h2>Контакты</h2>
  28. <dl>
  29. <dt>Западный край, северный конец (вход, разрядность соответствует атрибуту Биты данных)</dt>
  30. <dd>Значение, которое будет сдвинуто.</dd>
  31. <dt>Западный край, южный конец (вход, разрядность вычисляется как указано ниже)</dt>
  32. <dd>Количество битов значения, на которое нужно сдвигать значение на входе <var>данные</var>. Этот вход должен иметь столько битов, каково минимальное число для указания любой дистанции сдвига от 0 до значения, на единицу меньшего, чем значение атрибута Биты данных; то есть число битов, равное логарифму по основанию 2 от значения атрибута Биты данных, округлённому вверх до ближайшего целого. Например, если значение Биты данных равно 8, то этот вход должен иметь 3 бита; но если оно равно 9, то потребуются 4 бита.</dd>
  33. <dt>Восточный край (выход, разрядность соответствует атрибуту Биты данных)
  34. <dd>Результат сдвига входного значения на количество позиций, заданное другим входом.</dd>
  35. </dl>
  36. <h2>Атрибуты</h2>
  37. <p>Когда компонент выбран, или уже добавлен, комбинации от Alt-0 до Alt-9 меняют его атрибут <q>Биты данных</q>.</p>
  38. <dl>
  39. <dt>Биты данных</dt>
  40. <dd>Разрядность входа <var>данные</var> и выхода компонента.</dd>
  41. <dt>Тип сдвига</dt>
  42. <dd>Один из пяти возможных типов сдвига, как описано выше (Логический левый, Логический правый, Арифметический правый, Циклический левый, Циклический правый).</dd>
  43. </dl>
  44. <h2>Поведение Инструмента Нажатие</h2>
  45. <p>Нет.</p>
  46. <h2>Поведение Инструмента Текст</h2>
  47. <p>Нет.</p>
  48. <p><a href="../index.html">Назад к <em>Справке по библиотеке</em></a></p>
  49. </body>
  50. </html>