Forth
http://fforum.winglion.ru/

Цифровая схемотехника и архитектура компьютера
http://fforum.winglion.ru/viewtopic.php?f=29&t=3054
Страница 2 из 2

Автор:  _KROL [ Пн авг 21, 2017 22:21 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

Вот. В этом файле вроде всё правильно(правда использую ещё 2 элемента: и, или).

Вложения:
NewShifter.zip [3.3 Кб]
Скачиваний: 837

Автор:  JNAD [ Пн авг 21, 2017 23:51 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

как мне кажется значение входа shamt 2:0 должно сдвигать регистр на ту величину, которая задана на shamt, например если на входе shamt значение 111 то число должно сдвинуться на 7 разрядов. :?

Автор:  Hishnik [ Вт авг 22, 2017 00:23 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

JNAD писал(а):
как мне кажется значение входа shamt 2:0 должно сдвигать регистр на ту величину, которая задана на shamt, например если на входе shamt значение 111 то число должно сдвинуться на 7 разрядов.

Именно так. Еще подсказка: сдвинуть число на произвольное количество разрядов можно, комбинируя сдвиги на 1, 2, 4 и т.д. разрядов. В каждом случае можно выбирать "сдвиг на 0 (т.е. нет сдвига) или сдвиг на N".

Автор:  JNAD [ Вт авг 22, 2017 00:28 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

объясните мне вот эту фразу, пожалуйста: В каждом случае можно выбирать "сдвиг на 0 (т.е. нет сдвига) или сдвиг на N".

Автор:  Hishnik [ Вт авг 22, 2017 01:02 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

Если выбор из двух альтернатив, то ведь достаточно мультиплексора 2:1? Теперь сдвиговый регистр с однобитным сдвигом можно построить так: для каждого из 8 разрядов берем либо одноименный, либо соседний. Тогда получится, что сдвиг происходит или на 0, или на 1 разряд. Таким образом, заняли 8 мультиплексоров. Теперь у нас осталось еще два набора по 8 мультиплексоров... и еще два бита управления сдвигом.

Автор:  Ethereal [ Вт авг 22, 2017 16:33 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

Изложим схему по фортовски :
Код:
VARIABLE x0 VARIABLE x1 VARIABLE x2 VARIABLE x3   \ входные биты
VARIABLE x4 VARIABLE x5 VARIABLE x6 VARIABLE x7

VARIABLE m0 VARIABLE m1 VARIABLE m2 VARIABLE m3   \ промежуточные биты
VARIABLE m4 VARIABLE m5 VARIABLE m6 VARIABLE m7

VARIABLE n0 VARIABLE n1 VARIABLE n2 VARIABLE n3   \ промежуточные биты
VARIABLE n4 VARIABLE n5 VARIABLE n6 VARIABLE n7

VARIABLE y0 VARIABLE y1 VARIABLE y2 VARIABLE y3   \ выходные биты
VARIABLE y4 VARIABLE y5 VARIABLE y6 VARIABLE y7

5                 CONSTANT shift                            \ на вход
1 0 1 0 0 1 0 1   x0 ! x1 ! x2 ! x3 ! x4 ! x5 ! x6 ! x7 !   \  подано

: MULTIPLEX ( x0 x1 flag -- y ) IF SWAP THEN DROP ; \ мультиплексор 2x1

x0 @ 0    shift 1 AND MULTIPLEX m0 !
x1 @ x0 @ shift 1 AND MULTIPLEX m1 !
x2 @ x1 @ shift 1 AND MULTIPLEX m2 !
x3 @ x2 @ shift 1 AND MULTIPLEX m3 !
x4 @ x3 @ shift 1 AND MULTIPLEX m4 !
x5 @ x4 @ shift 1 AND MULTIPLEX m5 !
x6 @ x5 @ shift 1 AND MULTIPLEX m6 !
x7 @ x6 @ shift 1 AND MULTIPLEX m7 !
     
m0 @ 0    shift 2 AND MULTIPLEX n0 !
m1 @ 0    shift 2 AND MULTIPLEX n1 !
m2 @ m0 @ shift 2 AND MULTIPLEX n2 !
m3 @ m1 @ shift 2 AND MULTIPLEX n3 !
m4 @ m2 @ shift 2 AND MULTIPLEX n4 !
m5 @ m3 @ shift 2 AND MULTIPLEX n5 !
m6 @ m4 @ shift 2 AND MULTIPLEX n6 !
m7 @ m5 @ shift 2 AND MULTIPLEX n7 !
     
n0 @ 0    shift 4 AND MULTIPLEX y0 !
n1 @ 0    shift 4 AND MULTIPLEX y1 !
n2 @ 0    shift 4 AND MULTIPLEX y2 !
n3 @ 0    shift 4 AND MULTIPLEX y3 !
n4 @ n0 @ shift 4 AND MULTIPLEX y4 !
n5 @ n1 @ shift 4 AND MULTIPLEX y5 !
n6 @ n2 @ shift 4 AND MULTIPLEX y6 !
n7 @ n3 @ shift 4 AND MULTIPLEX y7 !

y7 @ . y6 @ . y5 @ . y4 @ . y3 @ . y2 @ . y1 @ . y0 @ .

BYE

Автор:  JNAD [ Сб авг 26, 2017 21:48 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

кажется вот так.

Вложения:
MyShifter.zip [2.27 Кб]
Скачиваний: 846

Автор:  _KROL [ Сб авг 26, 2017 22:04 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

Да. Ты прав. Это я тупой)

Автор:  JNAD [ Сб авг 26, 2017 22:09 ]
Заголовок сообщения:  Re: Цифровая схемотехника и архитектура компьютера

_KROL
не, благодаря тебе и Hishnik, ну и еще одному человеку)
удалось решить эту задачу.
так что это совместный проект)))

Страница 2 из 2 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/