我的代码游记

归档 · 2017

首页

关于

归档

计算机组成原理

原码、反码和补码

概述相信每一个学计算机的同学都头疼过原码,补码和反码这三个东西,甚至有时候还会冒出一个移码我们人类在计数的时候,用的都是十进制,但是计算机可不认这个,它们的世界用的是二进制来表示数,这个时候我们如果想要了解它们的世界是怎么样的,那么首先就要认识它们是怎么数数的 我们把我们正常计数用的表示方法表示的数称为“真值”,把机器里面表达的数称为“机器数” 原码概念原码(true form) 是一种计算机中对数字的二进制定点表示方法.原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小.数学表示如下(有的书上会约定符号位和数值位之间用逗号隔开,所以表达式会有所不同,这里的以没有逗号隔开的为准)若$X$是纯整数:$$[X]_原=\beg..

更多
Java位运算

位运算

简介我们都知道计算机里的数据实际上是通过二进制进行储存的,所以我们在计算机上的所有操作其实都是在操作这些二进制数据位运算,意思就是在实际编程中对把数据当做二进制数进行运算操作,因为计算机实际上也是把数据转化为二进制数进行运算,所以我们直接使用二进制的运算方式计算的效率就会很高试想如果是十进制运算的话,计算机还要先把十进制运算转化为二进制运算才开始计算,而我们直接使用二进制运算就跳过了中间”编译”的过程,这也是为什么我们说位运算的效率高. 种类在Java里位运算共有7种,如下表 名称 Java 按位与 a & b 按位或 a | b 按位异或 a ^ b 按位取反 ~a 左移 a << b 带符号右移 a >> b 无符号右移 a >&..

更多
loading..
集合专题

集合专题1 Collection

简介Collection的相关关系图如下 Collection是一个接口,它主要的两个分支是:List 和 Set。List和Set都是接口,它们继承于Collection List 有序[^1x],可以有重复的元素 Set 无序,不可以有重复元素 List和Set都有它们各自的实现类。为了方便,我们抽象出了AbstractCollection抽象类,它实现了Collection中的绝大部分函数;这样,在Collection的实现类中,我们就可以通过继承AbstractCollection省去重复编码。AbstractList和AbstractSet都继承于AbstractCollection,具体的List实现类继承于AbstractList,而Set的实现类则继承于AbstractSet。另外,Co..

更多
loading..
集合专题

集合专题3 LinkedList

简介LinkedList 和 ArrayList 一样,都实现了 List 接口,但其内部的数据结构有本质的不同。LinkedList 是基于链表实现的(通过名字也能区分开来),所以它的插入和删除操作比 ArrayList 更加高效。但也是由于其为基于链表的,所以随机访问的效率要比 ArrayList 差。 public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, java.io.Serializable{ ...... } 继承: AbstractSequentialList继承于Abstr..

更多
123