zoukankan      html  css  js  c++  java
  • 2020.9.27(周末总结)

    一、本周进度:

    正式上课的第一个周末如约而至,在这一周的学习中,其实主要还是是在课上听老师讲的那些内容,主要先知道什么是java语言,java语言的一些基本知识。

    今天主要是原码、反码、补码的定义:(这部分在暑假自学时就已经学过,但理解不深刻)

    记得之前学C语言的时候老师课上讲过一些,不过当时觉得考试不考,也就上课听了下,下课也没怎么多做了解。这次,Java课上再次提出来了,自己也超越了些资料,对这三种概念算是有所初步了解。

    1、原码

    数据储存的一种,就是以最高位储存符号(0为正数,1为负数),其他位储存数字(以二进制方式)

    例如:

    7 0000 0111
    -7 1000 0111

    2、反码

    正数的反码与原码一致,而负数的反码则是除最高位以外的数字全部相反(0换成1,1换成0)

    例如:

      7 -7
    原码 0000 0111 1000 0111
    反码 0000 0111 1111 1000

    3、补码

    正数的补码与原码一致,负数的补码是反码+1

    例如:

      7 -7
    原码 0000 0111 1000 0111
    反码 0000 0111 1111 1000
    补码 0000 0111 1111 1001

    在资料上也看到了一些测试方法,用原码计算10-10,即0000 1010(10的原码)   +   1000 1010 (-10的原码) = 1001 0100 (-20的原码),所以原码计算是不准确的;同样的反码也有类似的问题,如0000 1010(10的反码) +1111 0101(-10的反码)= 1111 1111(-0的反码),显然也是错误的,而补码就解决了这个问题,如 0000 1010(10的补码)+  1111 0110(10的补码)= 1 0000 0000  而只能储存八位,所以最高位就被舍弃了,就变成了0000 0000(0的补码)。

    在Java中用的就是补码的运算。

    二、遇到的问题:

          在Java学习中,用到的其实不时高中那样的书本知识,而是 一种新的计算机语言,所以最大的困难也就是对另一种语言的不理解吧。

    三、学习计划:

    按部就班的跟着老师的步伐走,跟上大部队,尽自己所能完成老师不值得程序作业。

  • 相关阅读:
    [LeetCode] 1092. Shortest Common Supersequence
    [LeetCode] 1091. Shortest Path in Binary Matrix
    [LeetCode] 1090. Largest Values From Labels
    [LeetCode] 1089. Duplicate Zeros
    git log
    Java-Note
    (转载)深入解析String#intern
    Android——LruCache源码解析
    (转载)gcc编译选项总结
    Java——LinkedHashMap源码解析
  • 原文地址:https://www.cnblogs.com/marr/p/14169889.html
Copyright © 2011-2022 走看看