【问题标题】:assign 4 bit to 8 bit register将 4 位分配给 8 位寄存器
【发布时间】:2014-01-26 01:11:32
【问题描述】:

如何一步一步将一个寄存器(8 位)中的最高 4 位(4 位)分配给另一个寄存器的最高 4 位?不改变 4 个 LSb?

这是我提出的解决方案,我可以分两步完成,但我相信有更巧妙的解决方案只需一步完成(可能需要更少的门或指令):

  • REGA &= (REGB | 0x0F);
  • REGA |= (REGB & 0xF0);

任何擅长数字设计的人都可以帮忙吗? (现在是凌晨 3 点,我睡不着觉:-/)

【问题讨论】:

    标签: c embedded digital-logic


    【解决方案1】:
    A = (A & 0x0F) | (B & 0xF0)
    

    (请注意,此操作需要零门,但...)

    【讨论】:

    • LOL 听起来很简单:P 谢谢
    猜你喜欢
    • 2014-11-18
    • 2020-11-21
    • 1970-01-01
    • 2017-07-12
    • 1970-01-01
    • 2022-10-01
    • 2015-12-26
    • 2012-10-15
    相关资源
    最近更新 更多