【二进制转换】十进制 转 二进制 (含相关题型)

news2024/11/13 12:52:02

在这里插入图片描述

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~
个人主页:.29.的博客
学习社区:进去逛一逛~

十进制 转 二进制

    • 1. &运算符 介绍
    • 2. << 运算符 介绍
    • 3. 十进制 转 二进制
    • 4. 面试题 05.06. 整数转换 - 力扣(LeetCode)

1. &运算符 介绍

& 运算符,也称为按位与运算符,是一种位运算符。它用于对两个整数进行位运算,并生成一个新的整数,其中每个对应位上的值只有在两个操作数对应位上都为 1 的情况下才为 1,否则为 0。

按位与运算符使用符号“&”表示。它逐位比较两个操作数的每一位,并根据下面的规则生成结果:

  • 如果两个操作数的对应位都为 1,则结果的对应位为 1。
  • 如果两个操作数的对应位之一为 0,则结果的对应位为 0。

换句话说,只有当两个操作数的对应位上都为 1 时,结果才为 1。否则,结果为 0。


示例:

假设我们有两个二进制数:10111001 和 11001100。使用按位与运算符将它们进行位运算,结果是 10001000,它是两个操作数的对应位进行按位与运算得到的值。

  10111001 
& 11001100
  10001000



2. << 运算符 介绍

<< 运算符是一种位左移运算符,用于将一个整数的所有位向左移动指定的位数。

左移运算符将二进制数的所有位向左移动,并在右侧用零填充。每一次的左移操作都会使操作数乘以 2 的 n 次幂,其中 n 是左移的位数。


示例

假设我们有一个整数 x = 5,用二进制表示为 00000101,我们可以使用左移运算符将其向左移动两位,结果为 00010100,用十进制表示为 20。

x = 5 << 2;



3. 十进制 转 二进制

public class s01 {
	//转换、打印
	public static void print(int num) {
        
		//遍历32位(int在底层就是通过32位二进制存储的。)
		for(int i = 31;i >= 0;--i) {
			//通过 &运算 获得num的二进制形式
            //1 << 1 —— 二进制:0010
            //1 << 2 —— 二进制:0100
            //1 << 3 —— 二进制:1000
			System.out.print((num & (1 << i)) == 0?"0":"1");
		}
		System.out.println();
	}

注意:

    1. int在底层就是通过32位二进制存储的。



4. 面试题 05.06. 整数转换 - 力扣(LeetCode)

题目
在这里插入图片描述


作答

class Solution {
    public int convertInteger(int A, int B) {
        int ans = 0;

        //遍历获取二进制形式的32个数位
        for(int i = 0;i < 32;++i){
            int a = (A & (1 << i));
            int b = (B & (1 << i));
            //遇到不相同的数位,就是需改变的数位
            if(a != b) ++ans;
        }

        return ans;
    }
}

在这里插入图片描述




在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/815720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

每日一题——只出现一次的数字(II)

只出现一次的数字——II 题目链接 注&#xff1a;本题的解法建立在位运算之上&#xff0c;如果对位运算不太了解&#xff0c;建议先看看&#x1f449;位运算详解 思路 可能有小伙伴做了只出现一次的数字——I后认为这题也可以用异或运算来解决&#xff0c;但是我们需要注意到…

企业服务器数据库中了_locked勒索病毒怎么解密,_勒索病毒简介与防护

网络技术的发展也为互联网安全带来了一定威胁&#xff0c;对于企业来说&#xff0c;数据安全是关系整个企业正常运行的基础&#xff0c;保护好计算机免受网络威胁的攻击成为大家的一致目标。不过&#xff0c;近期&#xff0c;我们收到很多企业的求助&#xff0c;企业的服务器数…

汽车后视镜反射率检测系统

随着社会的快速发展和物质生活的提供&#xff0c;机动车越来越普及&#xff0c;道路行车安全日益重要。为了保障机动车辆和行人的安全&#xff0c;在行车时不断观察后方和两侧的图像尤为重要。机动车后视镜通过反射镜面可以提供在规定视野内后方和两侧的图像&#xff0c;从而提…

【极大似然性】不同函数(均方误差、交叉熵、KL 散度)不同结局(1/2)

Kowshik chilamkurthy 一、说明 很多时候&#xff0c;数据科学家和机器学习从业者并不欣赏不同损失指标之间的数学和直观关系&#xff0c;如负对数似然、交叉熵、最大似然估计、Kullback-Leibler &#xff08;KL&#xff09; 散度&#xff0c;以及最重要的均方误差。如果我说KL…

工业RFID读写器在食品饮料加工生产的应用!

当前食品饮料加工行业快速发展&#xff0c;得益于科技的应用&#xff0c;科技不仅提高了生产效率&#xff0c;还提升了食品生产质量和食品安全水平。其中&#xff0c;RFID技术在食品饮料行业中的应用对于加工生产帮助很大&#xff0c;RFID技术未来在食品饮料行业仍有巨大的潜力…

进阶高级测试专项,Pytest自动化测试框架总结(四)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、pytest之不只是…

B. Longest Divisors Interval(连续倍数)

题目&#xff1a;Problem - B - Codeforces 总结&#xff1a; 对于连续的倍数&#xff0c;要想连续的数量越大连续的数越小 对于该题遍历50就可以AC 代码献上&#xff08;连续倍数&#xff09;&#xff1a; #include<iostream> #include<cmath>using namespace…

Indo-1 AM,112926-02-0,INDO-1, AM,钙离子荧光探针

资料编辑|陕西新研博美生物科技有限公司小编MISSwu​ PART1----产品描述 Indo-1 AM钙离子荧光探针&#xff08;112926-02-0&#xff09;&#xff0c;一种荧光 Ca2 指示剂 (λex340 nm&#xff0c;λem405/485 nm)。Indo-1属紫外激发Ca2荧光指示剂&#xff0c;也是目前常用的钙…

1018 Public Bike Management (PAT甲级)

这道题一开始测试点7过不了&#xff0c;后来发现是需要“output the one that requires minimum number of bikes that we must take back to PBMC”&#xff0c;补上就可以了。 #include <cstdio> #include <vector> #include <algorithm> #include <se…

小红书运营推广方法分享

大家好&#xff0c;我是网媒智星&#xff0c;今天跟大家讨论一下小红书的运营推广方法&#xff0c;总结了七点经验分享给大家。 首先&#xff0c;让我们了解一下什么是热门文案。热门文案可从以下三个方面来定义&#xff1a; 1. 阅读量&#xff1a;如果一篇小红书的阅读量达到上…

汽车后视镜反射率测定仪

汽车后视镜位于汽车头部的左右两侧&#xff0c;顶部以及汽车内部的前方。汽车后视镜反映汽车正后方视野、两侧视野和汽车前端区域视野&#xff0c;以便驾驶员可以间接看清楚这些位置的情况&#xff0c;它起着“第二只眼睛”的作用&#xff0c;扩大了驾驶者的视野范围&#xff0…

手写自定义的spring-boot-start

需求&#xff1a;手写一个加密的spring-boot-start&#xff0c;按着用户定义的加密算法&#xff08;可选&#xff1a;MD5、SHA&#xff09;去加密内容 新建一个maven项目 新建好的项目结构和pom.xml如图 添加pom.xml 完整的pom.xml文件 <?xml version"1.0" …

高并发下判重难?架构必备技能 - 布隆过滤器

系列文章目录 当Dubbo遇到高并发&#xff1a;探究流量控制解决方案 主从选举机制&#xff0c;架构高可用性的不二选择 高并发下判重难&#xff1f;架构必备技能 - 布隆过滤器 系列文章目录前言一、布隆过滤器简介二、特性与应用场景三、参数定制四、java版本的Demo五、总结 前…

七个步骤, 编写一个 Servlet 的 HelloWorld 程序

目录 1.创建项目 2.引入依赖 ①直接粘贴仓库目标地址代码 ② 下载jar包, 然后导入jar包 3.创建目录 4.编写代码 5.打包代码 6. 部署程序 ①使用IDEA打成war包 ②更方便的部署方式 7.验证程序 1.创建项目 使用IDEA创建一个maven项目 2.引入依赖 引入依赖的方式两种…

selenium-web自动化测试

一、selenium环境部署 1.准备chrome浏览器&#xff08;其他浏览器也行&#xff09; 2.准备chrome驱动包 步骤一&#xff1a;查看自己的谷歌浏览器版本(浏览器版本和驱动版本一定要对应) 步骤二&#xff1a;下载对应的驱动包, 下载路径 : ChromeDriver - WebDriver for Chrom…

环境搭建的上手指南

前言 测试环境是QA开展测试工作的前置条件。稳定和可控的测试环境&#xff0c;可以使测试人员在执行测试用例时无需花费额外的时间去维护。 有些公司运维或者研发部门会帮忙准备好测试环境&#xff0c;但是QA如果一味依赖其他部门&#xff0c;会局限测试工作的开展。 一、什…

OSPF随记

邻居状态机&#xff1a;进度条 工作原理&#xff1a; 1.发送hello报文&#xff0c;建立邻居关系 down&#xff1a;没有发送报文之前 init:开始发送hello报文&#xff0c;自己收到的hello报文中没有自己的route-id 2way:收到的hello报文中有自己的route-id&#xff08;在2w…

selenium如何打开浏览器,等待用户输入完成后,再运行

selenium如何打开浏览器&#xff0c;等待用户输入完成后&#xff0c;再运行 一、在脚本中&#xff0c;等待用户输入 在使用 Selenium 打开浏览器后等待用户输入完成&#xff0c;可以使用 Python 编写一个简单的脚本来实现。首先&#xff0c;确保你已经安装了 Selenium 和对应的…

这 4 个系统可靠性评估指标,可能比 MTTR 更靠谱!

如果要评选研发效能管理中最重要的 10 个度量指标&#xff0c;相信 MTTR&#xff08;Mean Time to Recover&#xff0c;平均恢复时间&#xff09;一定榜上有名。 MTTR 代表一定周期内可修复系统不可用状态的平均持续时长&#xff0c;可以帮助企业更好地理解技术团队与研发工作…

GPU显卡驱动安装

查看GPU版本 lspci | grep -i nvidia从下面的网址ThePCI ID Repository中输入ID查看对应的GPU版本 官网NVIDIA下载对应的驱动 安装下载的文件 sudo sh ./NVIDIA-Linux-x86_64-535.86.05.run 检验是否安装成功 nvidia-smi