`
jamie.wang
  • 浏览: 344977 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

关于移位

阅读更多

1. 移位计算

k是n所占的位数

例如:java中的int 是 4个字节即32位,long是8个字节即64位

if (m < k)
  m = k;
else
  m = m % k;

n >> m = Math.floor(n / 2^m); // floor(x)是对x向下取整的意思,即比x小的最接近的整数,
                                                // 正数就是去掉x的小数位,负数就是比x小的负数。
n << m = n * (2^m);

 

2. 二进制移位计算

1111 1111 1110 1001
              ||
              \/
1111 1111 1110 1000

  i 正数 :移动相应的位数,并补零。

例如:int 39 << 4 = 624:

0000 0000 0010 0111
              ||
              \/
0000 0010 0111 0000

ii 负数 :移动相应的位数,没移动一位符号位补1。

注意负数在计算机中是用它的补码表示的。

例如:int -23 >> 3 = -3

1111 1111 1110 1001
                ||
                \/
1111 1111 1111 1101
 

 

 

 

 

分享到:
评论

相关推荐

    移位加密解密.rar

    在IT领域,加密和解密是信息安全的重要组成部分,特别是在网站代码保护...总的来说,这个压缩包提供了一个关于移位加密解密的实际应用案例,对于学习和研究加密技术,尤其是ASP环境下的加密实践,是非常有价值的资源。

    欧姆龙CP1H系列PLC,移位指令

    为了更深入地掌握欧姆龙CP1H系列PLC的移位指令,你需要熟悉其编程环境,如CX-Programmer,以及指令手册中关于移位指令的具体语法和使用限制。通过实践编写和测试程序,可以更好地理解和运用这些指令,从而提升你的...

    移位除.zip

    以下是关于移位除的详细解释和相关知识点: 1. **位移操作**: - **左移(左移运算符)**:将二进制数的所有位向左移动指定的次数。左边空出的位用零填充。例如,二进制数1010 将变为101000,相当于乘以2的2次幂。...

    移位寄存器型彩灯控制器3.zip

    在这个“移位寄存器型彩灯控制器3.zip”文件中,我们可以推测包含的是一个通信1101班学生高爽完成的关于移位寄存器彩灯控制器的设计或项目资料。 移位寄存器是一种特殊的数字电路,它能够存储并按顺序移动数据位。...

    移位寄存器的使用说明和反馈节点_labview移位寄存器的使用_

    移位寄存器是数字电路中的重要组成部分,它在数据处理和存储方面起着关键作用。...在"移位寄存器的使用说明和反馈节点.vi"这个文件中,读者可以找到关于这些主题的详细实例和示例代码,进一步提升LabVIEW编程技巧。

    关于移位操作的一点重要说明

    在编程语言中,移位操作是一种非常基础且重要的算术运算,特别是在处理二进制数据时。本文将详细讲解C语言中的移位操作,并通过具体的示例来解析其工作原理和注意事项。 首先,我们需要理解移位操作的基本概念。在...

    java中关于移位运算符的demo与总结(推荐)

    下面小编就为大家带来一篇java中关于移位运算符的demo与总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    哈工程模型机课程设计源码

    这里有几点关于移位运算及其在模型机中的应用的知识点: 1. **左移运算(逻辑左移)**:在二进制数的左侧添加零,相当于将数值乘以2的n次方,其中n为移位次数。在大多数处理器中,逻辑左移会用零填充最高位,保持...

    移位操作指令汇编源文件1

    根据给定文件的信息,我们可以总结出以下关于移位操作指令汇编源文件的关键知识点: ### 一、汇编语言基础知识 #### 汇编语言概述 汇编语言是一种低级编程语言,它与机器语言非常接近,每条汇编语言指令对应一条...

    Quartus基于ram的移位寄存器源文档

    #### 一、关于该IP Core 本文件描述了Altera提供的基于RAM的移位寄存器(ALTSHIFT_TAPS)megafunction IP Core。该IP Core包含了一些传统移位寄存器所不具备的特点。通常情况下,传统的移位寄存器是通过标准的...

    delphi 移位密码

    最后,关于提供的压缩包文件“移位密码”,很可能是包含了一个Delphi项目或者源代码文件,用于演示或实践上述的移位密码算法。如果你能够获取并查看这个文件,将有助于更深入地理解Delphi中如何实现移位密码。 总之...

    线性反馈移位寄存器

    关于线性反馈移位寄存器的代码,模拟LFSR运行

    shift_register_testbench

    总的来说,这个资源为学习者提供了一个实践VHDL编程和数字逻辑电路仿真的机会,特别是关于移位寄存器这一重要概念。通过编写和验证自己的VHDL代码,可以深入理解移位寄存器的工作原理及其在数字系统中的应用。

    C语言中关于字符串左右循环移位的问题

    C语言中关于字符串左右循环移位的问题 C语言中关于字符串左右循环移位的问题是一个经典的编程题型,今天我们将对其进行详解,并给出两种方法求解。 首先,让我们来解决字符串循环右移的问题。方法一:利用已有的...

    eda实验中的移位寄存器

    里面是自己写的关于eda实验移位器的源代码还有仿真结果,自己已验证是对的欢迎大家采纳

    C语言的移位操作

    关于C语言位操作,左移时总是移位和补零。右移时无符号数是移位和补零,此时称为逻辑右移;而有符号数大多数情况下是移位和补最左边的位(也就是补最高有效位),移几位就补几位,此时称为算术右移。

    三菱PLC彩灯移位程序.rar

    标题中的“三菱PLC彩灯移位程序.rar”暗示了我们即将探讨的是关于三菱可编程逻辑控制器(PLC)在实现彩灯移位效果时所使用的编程技术。三菱PLC是一种广泛应用于工业自动化领域的控制器,它能通过编程来控制各种设备...

    西南交大数电实验报告材料.docx

    实验六是关于移位寄存器的。移位寄存器是一种能够将数据位逐位移动的存储设备。在Verilog代码中,可以看到`output reg [3:0] q`定义了一个4位的寄存器q,`co`可能是进位输出。`if(ud)`和`else`部分描述了根据输入ud...

Global site tag (gtag.js) - Google Analytics