`
只帅一次
  • 浏览: 34482 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java编程思想练习题-第3章练习11,12-移位操作

阅读更多

题目:(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算法练习-字符串移位练习题

    [Java]算法练习-字符串移位练习题

    Thinking in 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练习题,实用于Java大部分人群

    ### Java练习题知识点详解 #### 1. 斐波那契数列 - **知识点**:斐波那契数列是一种常见的数学...以上练习题涵盖了Java编程语言的多个方面,包括基础语法、数据结构、算法实现等,适合不同程度的Java学习者进行练习。

    《Java面向对象编程》练习题.docx

    【Java面向对象编程】练习题解析 一、填空题 1. Java 有三个主要版本:Java Standard Edition (Java SE),Java Enterprise Edition (Java EE),以及Java Micro Edition (Java ME)。 2. 若JDK安装在"D:JDK",Path...

    Java面向对象编程练习题.pdf

    Java 面向对象编程是Java语言的核心特性,它允许开发者将复杂的问题分解为一系列相互协作的类和对象。以下是对题目中涉及的知识点的详细说明: ...通过这些练习题,可以巩固和加深对Java编程的理解。

    计算机组成原理练习题-答案.doc

    计算机组成原理练习题-答案 本资源是计算机组成原理领域的练习题答案,涵盖了计算机组成原理的多个方面,包括存储器、指令系统、CPU寄存器、数据传送、微指令格式、浮点数表示、DMA方式、总线传输周期、同步控制...

    java 移位运算符的资源

    Java 移位运算符是编程语言中用于处理二进制位的一种高效操作方式,它们能够对整数类型(byte, short, int, long)的值进行左移、右移和无符号右移操作。理解这些运算符对于优化代码和深入理解计算机底层工作原理至...

    习题-第3章 1

    该题目涉及的是一个基于移位寄存器控制的开关电路问题,主要知识点包括移位寄存器的工作原理、开关电路的逻辑控制、电容的充放电以及电压比较器的应用。 1. 移位寄存器:移位寄存器是一种数字逻辑电路,能够按照...

    Thinking in java4(中文高清版)-java的'圣经'

    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 ...

    计算机组成原理-指令系统-练习题.doc

    计算机组成原理-指令系统-练习题 计算机组成原理是计算机科学中的一门重要的基础学科,它研究计算机的基本结构、组成部分、工作原理和设计方法。指令系统是计算机组成原理的核心部分之一,它研究计算机如何执行指令...

    数字逻辑电路 《移位寄存器》习题及参考答案.docx

    3. **功能解析**:对于特定型号的移位寄存器,如74LS194,我们需要了解其功能控制端口的用途。例如,74LS194可以通过不同的S0和S1输入组合实现不同操作: - 当S0S1=01时,数据通过DSL输入,寄存器在时钟脉冲上升沿...

    EDA-VHDL-实验编程练习题

    EDA(电子设计自动化)是利用计算机辅助软件进行集成电路设计的一门技术,而...通过"EDA_VHDL_实验编程练习题"的实践,学习者可以逐步提升VHDL编程能力,理解FPGA的工作原理,为将来进行更复杂的系统设计打下坚实基础。

    Java基础练习题.pdf

    【Java基础练习题详解】 1)Java应用程序的主入口点是`main`方法,其有效定义为`public static void main(String[] args)`。因此,正确的答案是C。 2)给出的代码是一个简单的Java程序,会正常编译并输出"Hello ...

    第四章 课后编程练习参考代码-20181

    在本章的课后编程练习中,我们涵盖了多个与数组、算法、数据处理以及基本的编程技巧相关的知识点。以下是对这些知识点的详细说明: 1. **奇偶数调整**: - **用两个数组实现**:这种方法是创建两个新的数组,一个...

    VHDL编程练习-8位双向循环移位寄存器设计及仿真

    VHDL(VHSIC Hardware Description Language)是一种用于硬件描述的编程语言,广泛应用于数字电路设计和 FPGA(Field-Programmable Gate Array)或 ASIC(Application-Specific Integrated Circuit)的开发。...

    大基(第2版)第1章练习题 - 计算机基础教学部_php.pdf

    计算机基础知识是IT学习的基石,本章练习题涵盖了这一领域的一些关键知识点,包括计算机历史、计算机分类、信息技术的构成、信息编码以及计算机运算等。 1. 世界上第一台电子计算机ENIAC(Electronic Numerical ...

    java编程规范(第三版)

    第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 分隔符 ...

    【IT十八掌徐培成】Java基础第02天-04.运算符-移位运算-逻辑运算.zip

    Java支持三种类型的移位运算:左移(),右移(&gt;&gt;)和无符号右移(&gt;&gt;&gt;)。左移运算符将二进制数的所有位向左移动指定的位数,空出的位置由0填充。例如,`5 的结果是20,因为5的二进制形式是0101,左移两位后变为...

    例说51单片机C语言第三版练习程序

    第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 ...

Global site tag (gtag.js) - Google Analytics