JAVA中为何~1等于-2,~0等于-1呢????不懂这是为什么。

pop3696 2007-02-26 10:42:53
刚学,不懂
...全文
1841 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
pop3696 2007-02-27
  • 打赏
  • 举报
回复
to coldwindtang(风)

谢谢
「已注销」 2007-02-26
  • 打赏
  • 举报
回复 2
这个问题涉及到计算机内部的编码。
对于整数,计算机内部用最高位表示符号位,0表示为正,1表示为负。
对于负数,为了便于计算,计算机用补码来表示其值。
已经一个数的补码,要知道其值分两种情况:
1:符号位是0,正数,所以后面的二进制位则表示大小,即正数的原码=其补码。如1表示出来则为00000001(我这里用八位来表示,也可以用16位或32位)
2:符号位是1,负数,这时候需要把后面的数取反再加一(要问为什么?查一下资料吧,可以根据补码的特性推出来),所以11111110表示的数是1111110取反为0000001,再加一,则为0000002。算上符号位,就是-2。

再让我们回到楼主的问题。
1的二进制表示为:00000001,则~1为11111110,根据补码的转换方法,我们就可以算出11111110表示的数是-2.
同理:~0 = -1

Gekkou 2007-02-26
  • 打赏
  • 举报
回复
以int型为例:
~1 = 11111111 11111111 11111111 11111110 = -2
~0 = 11111111 11111111 11111111 11111111 = -1
lixiaoxue85 2007-02-26
  • 打赏
  • 举报
回复
LZ把代码贴出来 取非,结果只有0和1吧 着么可能出来-2,LZ看错了?
expter 2007-02-26
  • 打赏
  • 举报
回复
没懂你什么意思
pop3696 2007-02-26
  • 打赏
  • 举报
回复
说错,是非操作(~),~1因该是0啊怎么是-2 ??
pop3696 2007-02-26
  • 打赏
  • 举报
回复
对1和0分别取反。
mingxuan3000 2007-02-26
  • 打赏
  • 举报
回复
不明白说什么
日常办公、游戏、浏览网页时,我们总被重复的鼠标点击、快捷键操作打断节奏,想提升效率又记不住复杂快捷键,传统的鼠标手势工具要么功能单一、要么配置复杂,根本无法满足个性化的操作需求 —— 而鼠标轨迹大师 Pro v3.0,就是专为高效操作打造的专业级手势识别控制工具,通过鼠标轨迹手势一键触发各类电脑操作,告别繁琐的点击与快捷键,让电脑操作效率翻倍。 这款工具搭载三大核心功能模块,全方位覆盖不同场景的手势操作需求。首先是多场景模式预设,内置办公、游戏、浏览三大模式,每个模式都预置了适配场景的手势映射,办公模式支持浏览器前进后退、复制粘贴、新建标签页,游戏模式适配常用操作手势,浏览模式专为网页操作优化,无需手动配置即可快速上手;其次是自定义手势与动作映射,支持新增、编辑、删除手势配置,不仅能设置基础的滑动手势,还支持圆形、矩形、对勾、叉号等复杂轨迹手势,可自由映射按键、截图、窗口控制、程序启动等动作,完全适配个性化操作习惯;同时配备实时轨迹显示、操作日志、练习模式,新手也能快速熟悉手势操作,导入导出配置功能方便备份与分享,全程无广告、无后台驻留,使用体验清爽高效。 这款工具可全面适配多人群、全场景的操作需求,精准解决不同用户的核心痛点。对于职场办公人群,可通过手势快速完成浏览器操作、文档编辑、截图保存,无需切换窗口或记住快捷键,大幅提升办公效率;对于游戏玩家,可自定义游戏内的快捷操作手势,减少按键操作,提升游戏操作流畅度;对于网页浏览用户,用简单的左右滑动手势就能完成前进后退,无需点击按钮,浏览体验更顺滑;对于电脑操作爱好者,可自由配置各类手势映射,打造专属的高效操作方式,告别传统的操作逻辑,让电脑用起来更顺手。
内容概要:本文系统研究了多轴同步轨迹规划的5段S型、7段S型及梯形算法,深入剖析了三种算法的设计逻辑、运动特性与适用场景。通过以运动时间最长轴为基准、采用位移比例缩放非基准轴参数的方法,实现了多轴的同步启停控制。5段S型算法在确保加速度连续、无刚性冲击的同时,简化了计算流程,提升了控制响应速度;7段S型算法具备最优的运动平滑性,适用于超精密设备;而梯形算法结构简洁、计算量小,适合低成本、高响应的工业控制系统。文章通过对比分析三者的平滑性、控制复杂度、计算量和应用场景,为不同精度与成本需求的工业自动化系统提供了科学的算法选型依据,并对未来智能化、自适应化的轨迹规划发展趋势进行了前瞻性展望。; 适合人群:具备自动化、机械电子、控制工程等相关专业背景,从事工业控制、机器人、数控系统研发的科研人员及工程师,尤其适合有一定MATLAB/Simulink仿真基础的研发人员。; 使用场景及目标:①应用于数控机床、搬运机器人、包装机械、多轴伺服平台等工业设备的轨迹规划设计;②为多轴运动控制系统提供算法选型参考,以平衡控制精度、响应速度与实现复杂度;③作为高校相关课程的教学案例或科研项目的技术支撑。; 阅读建议:建议结合文提供的MATLAB代码进行仿真复现,通过调整参数观察不同算法的轨迹特性,深入理解同步控制机制;同时可拓展学习S型加减速在实际驱动器的实现方式,以增强工程实践能力。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧