题目:(1)以一个最高有效位为1的二进制数字开始,用有符号右移操作符对其进行右移,直至所有的二进制位都被移出为止。
(2)亿一个所有位都是1的二进制数字开始,先左移它,然后用无符号右移操作对其右移,直至所有的二进制位被移出为止。
分析:java移位操作有有符号移位和无符号移位两种,这样来记,左移位<<低位补零,有符号右移位>>高位插符号位,无符号右移位>>>高位补零
import java.util.*; public class test { public static void main(String[] args) { int h = 0x10000000; System.out.println(Integer.toBinaryString(h)); for(int i = 0; i < 28; i++) { h >>>= 1; System.out.println(Integer.toBinaryString(h)); } System.out.println("-----------end1----------------------"); h=0xffffffff; for(int i = 0; i < 3; i++) { h <<= 1; System.out.println(Integer.toBinaryString(h)); } System.out.println("-------------end2--------------------"); for(int i = 0; i < 28; i++) { h >>>= 1; System.out.println(Integer.toBinaryString(h)); } } }
结果:
10000000000000000000000000000 1000000000000000000000000000 100000000000000000000000000 10000000000000000000000000 1000000000000000000000000 100000000000000000000000 10000000000000000000000 1000000000000000000000 100000000000000000000 10000000000000000000 1000000000000000000 100000000000000000 10000000000000000 1000000000000000 100000000000000 10000000000000 1000000000000 100000000000 10000000000 1000000000 100000000 10000000 1000000 100000 10000 1000 100 10 1 -----------end1---------------------- 11111111111111111111111111111110 11111111111111111111111111111100 11111111111111111111111111111000 -------------end2-------------------- 1111111111111111111111111111100 111111111111111111111111111110 11111111111111111111111111111 1111111111111111111111111111 111111111111111111111111111 11111111111111111111111111 1111111111111111111111111 111111111111111111111111 11111111111111111111111 1111111111111111111111 111111111111111111111 11111111111111111111 1111111111111111111 111111111111111111 11111111111111111 1111111111111111 111111111111111 11111111111111 1111111111111 111111111111 11111111111 1111111111 111111111 11111111 1111111 111111 11111 1111
相关推荐
[Java]算法练习-字符串移位练习题
第3章 控制程序流程 3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 ...
### Java练习题知识点详解 #### 1. 斐波那契数列 - **知识点**:斐波那契数列是一种常见的数学...以上练习题涵盖了Java编程语言的多个方面,包括基础语法、数据结构、算法实现等,适合不同程度的Java学习者进行练习。
【Java面向对象编程】练习题解析 一、填空题 1. Java 有三个主要版本:Java Standard Edition (Java SE),Java Enterprise Edition (Java EE),以及Java Micro Edition (Java ME)。 2. 若JDK安装在"D:JDK",Path...
Java 面向对象编程是Java语言的核心特性,它允许开发者将复杂的问题分解为一系列相互协作的类和对象。以下是对题目中涉及的知识点的详细说明: ...通过这些练习题,可以巩固和加深对Java编程的理解。
计算机组成原理练习题-答案 本资源是计算机组成原理领域的练习题答案,涵盖了计算机组成原理的多个方面,包括存储器、指令系统、CPU寄存器、数据传送、微指令格式、浮点数表示、DMA方式、总线传输周期、同步控制...
Java 移位运算符是编程语言中用于处理二进制位的一种高效操作方式,它们能够对整数类型(byte, short, int, long)的值进行左移、右移和无符号右移操作。理解这些运算符对于优化代码和深入理解计算机底层工作原理至...
该题目涉及的是一个基于移位寄存器控制的开关电路问题,主要知识点包括移位寄存器的工作原理、开关电路的逻辑控制、电容的充放电以及电压比较器的应用。 1. 移位寄存器:移位寄存器是一种数字逻辑电路,能够按照...
2.8.2 语法 2.8.3 嵌入式HTML 2.8.4 一些标签示例 2.8.5 文档示例 2.9 编码风格 2.10 总结 2.11 练习 第3章 操作符 3.1 更简单的打印语句 3.2 使用Java操作符 3.3 优先级 3.4 赋值 3.4.1 方法调用中的别名问题 3.5 ...
计算机组成原理-指令系统-练习题 计算机组成原理是计算机科学中的一门重要的基础学科,它研究计算机的基本结构、组成部分、工作原理和设计方法。指令系统是计算机组成原理的核心部分之一,它研究计算机如何执行指令...
3. **功能解析**:对于特定型号的移位寄存器,如74LS194,我们需要了解其功能控制端口的用途。例如,74LS194可以通过不同的S0和S1输入组合实现不同操作: - 当S0S1=01时,数据通过DSL输入,寄存器在时钟脉冲上升沿...
EDA(电子设计自动化)是利用计算机辅助软件进行集成电路设计的一门技术,而...通过"EDA_VHDL_实验编程练习题"的实践,学习者可以逐步提升VHDL编程能力,理解FPGA的工作原理,为将来进行更复杂的系统设计打下坚实基础。
【Java基础练习题详解】 1)Java应用程序的主入口点是`main`方法,其有效定义为`public static void main(String[] args)`。因此,正确的答案是C。 2)给出的代码是一个简单的Java程序,会正常编译并输出"Hello ...
在本章的课后编程练习中,我们涵盖了多个与数组、算法、数据处理以及基本的编程技巧相关的知识点。以下是对这些知识点的详细说明: 1. **奇偶数调整**: - **用两个数组实现**:这种方法是创建两个新的数组,一个...
VHDL(VHSIC Hardware Description Language)是一种用于硬件描述的编程语言,广泛应用于数字电路设计和 FPGA(Field-Programmable Gate Array)或 ASIC(Application-Specific Integrated Circuit)的开发。...
计算机基础知识是IT学习的基石,本章练习题涵盖了这一领域的一些关键知识点,包括计算机历史、计算机分类、信息技术的构成、信息编码以及计算机运算等。 1. 世界上第一台电子计算机ENIAC(Electronic Numerical ...
第3章 词法结构 11 3.1 unicode 11 3.2 词法转换 12 3.3 unicode转义符 12 3.4 行终止符 13 3.5 输入元素和标记 14 3.6 空白 15 .3.7 注释 15 3.8 标识符 16 3.9 关键字 17 3.10 字面值 18 3.11 分隔符 ...
Java支持三种类型的移位运算:左移(),右移(>>)和无符号右移(>>>)。左移运算符将二进制数的所有位向左移动指定的位数,空出的位置由0填充。例如,`5 的结果是20,因为5的二进制形式是0101,左移两位后变为...
第3章 输出端口的应用 69 3-1 认识mcs-51的输入/输出端口 70 3-2 输出电路设计 72 3-2-1 驱动led 72 3-2-2 驱动蜂鸣器 73 3-2-3 驱动继电器 74 3-2-4 驱动固态继电器 75 3-2-5 驱动七段led数码管 76...
第3章 操作符 3.1 更简单的打印语句 3.2 使用Java操作符 3.3 优先级 3.4 赋值 3.4.1 方法调用中的别名问题 3.5 算术操作符 3.5.1 一元加、减操作符 3.6 自动递增和递减 3.7 关系操作符 3.7.1 测试对象的等价性 3.8 ...