verilog学习笔记5——进制和码制、原码/反码/补码

这篇具有很好参考价值的文章主要介绍了verilog学习笔记5——进制和码制、原码/反码/补码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

2023.8.13 天气晴


一、进制转换

1、十进制转二进制

整数:除以2,余数倒着写
小数:乘以2,正着写
verilog学习笔记5——进制和码制、原码/反码/补码,Verilog学习笔记,学习,笔记,verilog

例题1

(2.3175)d = ( )b = ( )b*2^2
10.0101   1001.01

例题2
十进制数13.613转化为二进制数,要求误差小于1%

2^-m <= 0.01 
-m lg2 <= -2
m >= 2/lg2 = 6.64   所以,m = 7
0.613*2=1.226
最后去整数部分的时候,如果小数部分大于0.5.那么应该取1

2、二进制转十进制

乘以2的次方

3、二进制乘除法

乘法:被乘数左移,后相加
除法:除数右移,被除数/余数去减去除数
verilog学习笔记5——进制和码制、原码/反码/补码,Verilog学习笔记,学习,笔记,verilog

二、原码、反码、补码

8位二进制数的范围:

有符号数 无符号数
-128~127 0~255
原码 反码 补码
-127~127 -127~127 -128~127
1111_1111 ~ 0111_111 1000_0000 ~ 0111_111 1000_0000 ~ 0111_1111

-128只有补码
补码:位数一定,绝对值最大的补码是符号位是1,数值位全为0,如-128的补码1000_0000

原码 反码 补码
+0 0000_0000 0000_0000 0000_0000
-0 1000_0000 1111_1111 0000_0000
127 0111_1111 0111_1111 0111_1111
-127 1111_1111 1000_0000 1000_0001
-128 1000_0000

verilog学习笔记5——进制和码制、原码/反码/补码,Verilog学习笔记,学习,笔记,verilog

1、由补码计算十进制数

方法1:符号位不变,其他位取反,再加一
方法2:补码的首位代表权,且是负数的权

例题3

1110_0000:-128+64+32=-32
0110_0000:64+32=96

2、计算某个负数的补码

[-X]补码 = 2^位数-X

4bit的-3的补码 = 16-3 = 13 = 4'b1101
8bit的-128的补码 = 2^8 - 128 = 128 =  8'b1000_0000

3、把二进制小数转换为十进制数

方法:符号位不变,整数和小数位一起取反加1文章来源地址https://www.toymoban.com/news/detail-646195.html

1011.10 
1100.01
1100.10
所以最后的值为-4.5

到了这里,关于verilog学习笔记5——进制和码制、原码/反码/补码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 原码,反码,补码,移码

    原码、反码、补码和移码是在计算机中表示有符号整数的方法。它们是为了处理正负数的运算和表示而设计的。下面我会逐个解释这些概念,并说明它们的使用和理解。 原码(Sign-Magnitude Representation): 原码是最简单的表示方法,其中最高位表示符号(0代表正数,1代表负数

    2024年02月08日
    浏览(36)
  • 原码,反码,补码

            原码、反码和补码是计算机中表示有符号整数的三种不同的二进制表示形式。它们的理解和原理涉及了计算机内部整数表示的数学概念和编码规则。 十进制数 原码 反码 补码 +5 00000101 00000101 00000101 +4 00000100 00000100 00000100 +3 00000011 00000011 00000011 +2 00000010 00000010 0000001

    2024年02月15日
    浏览(41)
  • 什么是原码、反码和补码

    前言 一个数在计算机中的表示形式是二进制的话,这个数其实就叫机器数。 机器数通常是带有符号的(指有正数和负数之分),计算机用最高位存放符号,这个 bit 一般叫做符号位。 正数的符号位为 0, 负数的符号位为 1。比如,十进制中的数 +7 ,计算机字长为8位,转换成

    2023年04月09日
    浏览(36)
  • 原码、补码、反码的关系及应用场景

    是三种表示有符号整数的方法,它们之间存在一定的关系。 原码 是最基本的表示方法,即将一个数的符号位和数值位分开表示,符号位用0表示正数,用1表示负数。例如,+7的原码为00000111,-7的原码为10000111。 反码 是在原码的基础上,将负数的数值位按位取反得到的表示方

    2024年02月06日
    浏览(46)
  • C++知识精讲13 | 原码、反码和补码

    ------------------------------------------------------------------------------------------------------------------------- 观看视频ing......  12岁的少年编程者告诉你编程如此简单  ------------------------------------------------------------------------------------------------------------------------- ---------------------------------------

    2024年02月16日
    浏览(36)
  • List 3.5 详解原码、反码、补码

    本博客文章已收录至我的Java SE专栏,如需阅读其他有关博客笔记请转至该专栏下 传送门 --Java SE_程序员雨空集 目录  前言 原码 原码的示例 原码的弊端 反码 反码的示例 反码的弊端 补码 补码的示例 补码的小细节 总结 原码:十进制数据的二进制表现形式,最左边是符号位,

    2024年02月08日
    浏览(97)
  • 【007】C++数据类型之原码、补码、反码

    💡 作者简介:专注于C/C++高性能程序设计和开发,理论与代码实践结合,让世界没有难学的技术。包括C/C++、Linux、MySQL、Redis、TCP/IP、协程、网络编程等。 👉 🎖️ CSDN实力新星,社区专家博主 👉 🔔 专栏介绍:从零到c++精通的学习之路。内容包括C++基础编程、中级编程、

    2024年02月05日
    浏览(32)
  • 补码的反码加1为什么是原码?

    搞了半个小时,终于弄懂了。 16 8 4 2 1 原码 1 0 0 1 1 反码 0 1 1 0 0 补码 0 1 1 0 1 学到这里了,我们肯定知道,原码+补码 = 0,在这里也就是 = 19 + 13 = 32,溢出来的一位正好舍去了; 所以说,对啊,只要保证原码+补码 = 32(以此类推)不就好了吗! 所以,补码是 通过原码 这样得

    2024年02月10日
    浏览(33)
  • 位运算(按位与、按位或、异或、取反)以及原码、反码、补码

    目录 位运算 按位与运算符 [ ] 按位或运算符 [ | ] 异或运算符 [ ^ ] 取反运算符 [ ~ ] 移位操作 一些面试常考的位操作运算 获取二进制中最右边的1 计算机原码、反码、补码 机器数 “三码”之间的转换 计算机中为啥要用补码呢? 真数 原码 反码 补码 有了原码为什么要使用反码

    2024年02月02日
    浏览(48)
  • 【C语言趣味教程】(2) 整数类型:数据类型的概念 | 原码反码与补码 | 有符号型和无符类型 | 研究 signed char 与 unsigned char 的取值范围

      🔗 《C语言趣味教程》👈  猛戳订阅!!! 在讲解数据类型前,我们不得不先讲解一些必备的知识点,比如如何定义一个变量,数据类型的基本概念。并介绍 ASCII 码,为 char 类型的讲解做必要的铺垫。然后讲解原码反码和补码,讲解 IEEE754标准时需要这部分的知识作为基

    2024年02月15日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包