ZKX's LAB

数电移位寄存器的左移 利用移位寄存器74ls194构成一个八只彩灯控制电路

2020-07-19知识15

清0可以用左移或右移来实现吗 移位寄存器 可以通过左移和右移方法实现。也可用并行的行送数法,并行送数法很简单只需把输入信号D1 D2 D3 D4为低电平就是哇。移位的方法就是使s0 s1变化,左移时s0=0 s1=1.右移的话就是s1=0.s0=1,这属于MSI移位寄存器及其应用方面较简单的问题哦。设计一个同步并行预置功能的4位左移移位寄存器,并附上电路图及引脚设置!十万火急,在线等,追加分! CLK是移位时钟信号,当CLK的上升沿到来时进程被启动,这个时候预置使能LOAD为高电平,将输入端口的4位二进制数并行置入移位寄存器中,作为串行左移输出的初始值;如果预置使能LOAD为低电平,则执行语句“REG4(3 DOWNTO 1):=REG4(2 DOWNTO 0)”,此语句表明:1一个时钟周期后将上一时钟周期移位寄存器的低三位赋给此寄存器的高三位;2将上一时钟周期移位寄存器中的最高位向QB输出。随着CLK脉冲的到来,就完成了将并行预置输入的数据逐位向左串行输出的功能。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SHFRT ISPORT(CLK,LOAD:IN STD_LOGIC;DIN:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);QB:OUT STD_LOGIC);END SHFRT;ARCHITECTURE behav OF SHFRT ISBEGINPROCESS(CLK,LOAD)VARIABLE REG4:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINIF CLK'EVENT AND CLK='1 THENIF LOAD='1' THEN REG4:=DIN;ELSE REG4(3 DOWNTO 1):=REG4(2 DOWNTO 0);END IF;END IF;QB(3);END PROCESS;END behav;8位左移和右移移位寄存器不同点 在没有溢出的情况下,左移相当于*2,然后对256求模;右移相当于/2,然后取整。在电路结构上基本一致,只是高低位定义不同。左移抛弃最高位,低位填充的是0;右移抛弃最低位,高位补0;

#指令寄存器#状态寄存器#计算机指令#移位寄存器#数据寄存器

随机阅读

qrcode
访问手机版