当前位置: 首页 > news >正文

有符号数和无符号数左移和右移

主要是有符号数的左移。
有的说不管符号位,直接左移,所以可以一会正数一会复数
https://bbs.csdn.net/topics/391075092
有的说符号位不动,其他来左移
不明白了。。。。
https://blog.csdn.net/hnjzsyjyj/article/details/119721014
https://wenku.baidu.com/view/6e31935402f69e3143323968011ca300a6c3f60d.html?wkts=1682661838416

算术移位对应有符号位数,逻辑移位对应无符号位数

左移与符号无关,都是逻辑左移(对应SHL指令),而右移无符号数做逻辑右移(对应SHR指令)、有符号数做算术右移(对应SAR指令)。 不过这也是与语言相关的,在Pascal中,移位一律是逻辑移位,算术移位要用乘除。

对于无符号数的左移和右移,因为不涉及到符号位的问题,比较好理解:
左移低位补零,高位舍弃
右移高位补零,低位舍弃

对于有符号数的左移和右移,因为符号位的参与,可能各个编译器的实现方式上有差别
我在/home/utils/gcc-5.2.0/bin/g++ 这个g++编译器的版本上试了下:
左移低位补零,高位舍弃(和无符号数的实现相同),这意味着本来一个正数,在移位的过程中,可能一会儿变成负数,一会儿又变回正数,然后再变负数···这种跳跃的情况。
右移高位补符号位,低位舍弃。所以如果一个int类型的-1, 进行右移操作,无论进行多少次,结果仍然为-1,因为-1 = 1111 1111 1111 1111 1111 1111 1111 1111b.

另外,char类型,其实是一个int8_t类型,是一个有符号的8bit整数类型。
————————————————
:https://blog.csdn.net/baidu_35679960/article/details/124510929

相关文章:

有符号数和无符号数左移和右移

主要是有符号数的左移。 有的说不管符号位,直接左移,所以可以一会正数一会复数 https://bbs.csdn.net/topics/391075092 有的说符号位不动,其他来左移 不明白了。。。。 https://blog.csdn.net/hnjzsyjyj/article/details/119721014 https://…...

Netty小白入门教程

一、概述 1.1 概念 Netty是一个异步的基于事件驱动(即多路复用技术)的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端。 1.2 地位 Netty在Java网络应用框架中的地位就好比,Spring框架在JavaEE开发中的地位。 以下的框架都使用了Nett…...

【逻辑位移和算数位移】

<< 运算符 && >> 运算符 正数位移 当 x>>n 中 x 为正数时&#xff0c;会将x的所有位右移x位&#xff0c;同时左边高位补0 显而易见&#xff0c;运算结束后&#xff0c;值为1 。 可知右移n位&#xff0c;结果就是 x / 2^n&#xff1a;7 / 2 ^2 1;…...

Blender3.5 边的操作

目录 1. 边操作1.1 边的细分 Subdivide1.2 边的滑移 Edge Slide1.3 边的删除1.4 边的溶解 Dissolve1.5 边线倒角 Bevel1.6 循环边 Loop Edges1.7 并排边 Ring Edges1.8 桥接循环边 1. 边操作 1.1 边的细分 Subdivide 在边选择模式&#xff0c;选中一条边&#xff0c;右键&…...

Java与Python、Node.js在人工智能和区块链应用程序开发中的比较

背景 Java、Python和Node.js都是常用的编程语言,它们在不同领域都有广泛的应用。在人工智能和区块链应用程序开发中,这三种语言都具有各自的优势和劣势。 Java的优势 Java在企业级应用中应用广泛,这得益于其跨平台性、安全性和稳定性等特点。在人工智能和区块链应用程序开…...

【计算机是怎么跑起来的】基础:计算机三大原则

【计算机是怎么跑起来的】基础&#xff1a;计算机三大原则 计算机的三个根本性基础1.计算机是执行输入&#xff0c;运算&#xff0c;输出的机器输入&#xff0c;运算&#xff0c;输出 2. 软件是指令和数据的集合指令数据 3. 计算机的处理方式有时与人们的思维习惯不同对计算机来…...

NXP公司LPC21XX+PID实现稳定温度控制

本例使用的是LPC21XX系列芯片提供的PWM功能实现稳定的温度控制。首先我们获得当前环境温度之后&#xff0c;再用设定的温度与当前温度相减&#xff0c;通过PID算法计算出当前输出脉宽&#xff0c;并将其输出到L298N模块中&#xff0c;使加热丝发热&#xff0c;形成闭环&#xf…...

【CE实战-生化危机4重置版】实现角色瞬移、飞翔

▒ 目录 ▒ 🛫 导读需求开发环境1️⃣ CE扫描内存,定位坐标地址(加密后的地址)2️⃣ 硬件写入断点,定位真实坐标地址内存写入断点,定位到访问地址分析代码...

强烈建议互联网人转战实体和农业,去了就是降维打击!实体太缺人才了,老板也不缺钱!...

大环境不好&#xff0c;互联网人该何去何从&#xff1f; 一位网友提出了一个新思路&#xff1a;强烈建议互联网同学转战实体、农业这些行业。实体真的太缺人才了&#xff0c;目前大部分实体都留下70后、80后在继续奋斗。其实实体老板很多都不缺钱&#xff0c;经过多年积累&…...

如何将 github pages 迁移到 vercel 上托管

如何将 github pages 迁移到 vercel 上托管 前言 早期网站使用 github pages,后来迁移到 coding,最近又放到腾讯云网站静态托管,无论是 coding 的 cos 存储桶,还是静态网站托管 他们都是收费的,那有没有免费的托管商呢,既不影响网站的访问速度还免费,于是,找了一下,还真有,ve…...

2023五一数学建模竞赛(五一赛)选题建议

提示&#xff1a;DS C君认为的难度&#xff1a;C<A<B&#xff0c;开放度&#xff1a;B<A<C 。 A题&#xff1a;无人机定点投放问题 这道题是传统的物理类题目&#xff0c;基本每次建模竞赛都会有。由于这道题目并未给明数据&#xff0c;所以数据获取和搜集资料是…...

Packet Tracer - 配置 RIPv2

Packet Tracer - 配置 RIPv2 目标 第 1 部分&#xff1a;配置 RIPv2 第 2 部分&#xff1a;验证配置 拓扑图 背景信息 尽管在现代网络中极少使用 RIP&#xff0c;但是作为了解基本网络路由的基础则十分有用。 在本活动中&#xff0c;您将使用适当的网络语句和被动接口配置…...

Android类似微信聊天页面教程(Kotlin)四——数据本地化

前提条件 安装并配置好Android Studio Android Studio Electric Eel | 2022.1.1 Patch 2 Build #AI-221.6008.13.2211.9619390, built on February 17, 2023 Runtime version: 11.0.150-b2043.56-9505619 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 11 …...

C/C++基础知识

专栏&#xff1a;C/C 个人主页&#xff1a; C/C基础知识 前言C关键字(C98)命名空间命名空间的定义正常的命名空间的定义如何使用命名空间 命名空间可以嵌套同一个工程中允许存在多个相同名称的命名空间&#xff0c;编译器最后会合成同一个命名空间中(一个工程中的.h文件和test.…...

Java 入门 - 语法基础

hello world public class Hello {public static void main(String[] args) {System.out.println("hello world");} } 复制代码 public: 是关键字&#xff1b;表示公开的class: 是关键字&#xff1b;用来定义类Hello: 是类名&#xff1b;大小写敏感&#xff1b;命名…...

Java线程池及拒绝策略详解

前文提到线程的使用以及线程间通信方式&#xff0c;通常情况下我们通过new Thread或者new Runnable创建线程&#xff0c;这种情况下&#xff0c;需要开发者手动管理线程的创建和回收&#xff0c;线程对象没有复用&#xff0c;大量的线程对象创建与销毁会引起频繁GC&#xff0c;…...

GitLABJenkins

GitLAB & Jenkins 目录 实践&#xff1a;基于Jenkins提交流水线(测试成功)-2023.4.25 目的&#xff1a;掌握通过触发器将GitLab和Jenkins集成&#xff0c;实现提交流水线。 1、触发Jenkins构建 安装Generic Webhook Trigger插件 重启后&#xff0c;进入一个Pipeline项目设…...

互联网摸鱼日报(2023-04-26)

互联网摸鱼日报&#xff08;2023-04-26&#xff09; InfoQ 热门话题 神州数码&#xff1a;抢抓云原生发展机遇&#xff0c;共建共治共享 OpenNJet 应用引擎开源生态 《产业数字人才研究与发展报告&#xff08;2023&#xff09;》 如何写出CPU友好的代码&#xff0c;百倍提升…...

石化企业数字化防爆融合通信解决方案

项目背景 石化工业是我国国民经济和社会发展的基础性、战略性产业&#xff0c;其发展和壮大受到了党和国家的高度重视。随着石化企业厂区规模的不断扩大以及技术的快速发展&#xff0c;现有石化企业专网通信系统建设相对滞后&#xff0c;缺乏结合人员管理、安全生产、安全通信…...

NTT学习笔记(快速数论变换)

一些概念 欧拉函数 ϕ ( n ) \phi(n) ϕ(n) 欧拉函数简介 阶 若 g g g和 n n n互质&#xff0c;则令 g x % n 1 g^x\%n1 gx%n1的最小正整数 x x x称为 g g g模 n n n的阶。 原根 对于互质的两个正整数 g g g和 n n n&#xff0c;如果 g g g模 n n n的阶为 ϕ ( n ) \phi…...

Perplexity查不出薛定谔方程推导?紧急修复指南:4步重置知识图谱权重,实测响应准确率从62%→98.7%

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Perplexity物理知识查询 Perplexity 是一款基于大语言模型的实时网络增强型问答工具&#xff0c;其在物理知识查询场景中展现出独特优势&#xff1a;它能动态检索权威物理数据库&#xff08;如NIST、ar…...

如何快速实现Android Studio中文界面:终极完整汉化指南

如何快速实现Android Studio中文界面&#xff1a;终极完整汉化指南 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本&#xff09; 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 还在为Android…...

RimWorld模组管理终极指南:3步掌握RimSort智能排序,告别游戏崩溃烦恼

RimWorld模组管理终极指南&#xff1a;3步掌握RimSort智能排序&#xff0c;告别游戏崩溃烦恼 【免费下载链接】RimSort RimSort is an open source mod manager for the video game RimWorld. There is support for Linux, Mac, and Windows, built from the ground up to be a…...

3.1 FiRa UCI规范解析——命令、响应与通知的交互逻辑

1. FiRa UCI规范的核心交互机制 第一次接触FiRa UCI规范时&#xff0c;我被它严谨的消息交互设计所震撼。这个看似简单的命令-响应机制&#xff0c;实际上蕴含着UWB通信的精妙控制逻辑。就像交通信号灯指挥车辆通行一样&#xff0c;UCI规范通过明确的指令流向和状态反馈&#…...

STM32串口高效通信秘籍:巧用DMA+空闲中断实现不定长数据收发(基于CubeIDE)

STM32串口高效通信秘籍&#xff1a;巧用DMA空闲中断实现不定长数据收发&#xff08;基于CubeIDE&#xff09; 在物联网设备和嵌入式系统开发中&#xff0c;串口通信是最基础也最关键的通信方式之一。无论是传感器数据采集、设备间通信还是与上位机交互&#xff0c;稳定高效的串…...

AArch64调试异常机制与自托管调试实践

1. AArch64调试异常机制概述在AArch64架构中&#xff0c;调试异常是处理器响应调试事件的核心机制。当程序执行过程中遇到预设的调试条件时&#xff0c;处理器会暂停正常执行流&#xff0c;转而进入异常处理流程。这种机制使得开发者能够在不引入额外硬件调试器的情况下&#x…...

告别WMMA API:用PTX的LDMATRIX和MMA指令在Ampere架构上重构你的FP16矩阵乘法内核

从WMMA到PTX&#xff1a;在Ampere架构上重构FP16矩阵乘法的深度实践 当开发者第一次接触Nvidia的Tensor Core编程时&#xff0c;WMMA&#xff08;Warp Matrix Multiply Accumulate&#xff09;API往往是首选方案。这套高层抽象接口屏蔽了硬件细节&#xff0c;让开发者能够快速实…...

双足机器人EDF推进系统与高精度扭矩控制技术

1. 双足机器人EDF推进系统深度解析在双足机器人研发领域&#xff0c;姿态控制一直是核心挑战。传统方案依赖腿部关节的精细调节&#xff0c;但在高速运动或突发扰动情况下往往响应不足。我们团队创新性地引入了EDF&#xff08;电动涵道风扇&#xff09;推进系统&#xff0c;通过…...

JupyterLab Desktop完整指南:5个秘诀让数据科学工作更简单

JupyterLab Desktop完整指南&#xff1a;5个秘诀让数据科学工作更简单 【免费下载链接】jupyterlab-desktop JupyterLab desktop application, based on Electron. 项目地址: https://gitcode.com/gh_mirrors/ju/jupyterlab-desktop 还在为Python环境配置和JupyterLab安…...

芯片HAST测试:通电工作下如何精准模拟极端环境挑战?

为了确保产品在高温、高湿等恶劣条件下仍能正常工作&#xff0c;HAST&#xff08;Highly Accelerated Stress Test&#xff09;测试成为不可或缺的一部分。本文将深入解析HAST测试&#xff0c;并探讨如何在通电工作状态下进行精准模拟&#xff0c;以应对极端环境挑战。什么是HA…...