(补充):java各种进制、原码、反码、补码和文本、图像、音频在计算机中的存储方式

文章目录

  • 前言
  • 一、进制
    • 1 逢几进一
    • 2 常见进制在java中的表示
    • 3 进制中的转换
      • (1)任意进制转十进制
      • (2)十进制转其他进制
  • 二、计算机中的存储
    • 1 计算机的存储规则(文本数据)
      • (1)ASCII码表
      • (2)编码规则的发展演化
    • 2 计算机的存储规则(图片数据)
      • (1)分辨率、像素
      • (2)黑白图与灰度图
      • (3)彩色图
    • 3 计算机的存储规则(音频数据)
  • 三、原码、反码和补码
    • 1 原码
    • 2 反码
    • 3 补码
    • 4 总结一下
    • 5 字节范围推广
    • 6 数据类型转换中的隐式转换和强制转换一些例子就可以用补码的知识来解释了
      • (1)同一个整数在 byte、short、int、long下面补码分别表示什么呢?
      • (2)隐式转换
      • (3)强制转换
  • 总结


前言

本文会介绍:

  • java中的各种进制的转换关系
  • 计算机中文本、图片、音频三种数据类似是怎么存在计算机中的
  • 普及图像、和音频的一些常识知识

计算机数据分为三种: 文本(Text)数据:数字,字母,特殊符号等等、(Image)图片数据、(Sound)声音数据。有且仅有这三种,其中视频是图片和音频数据的组合。

【注】:无论是文本、图片、还是音频计算机都是以二进制存储,即用一堆0,1数字来表示。这是怎么做到的,下面我们简单了解一下,其实这块属于计算机组成原理的知识。
先来了解一下进制吧。


一、进制

1 逢几进一

  • 十进制:逢十进一
  • 二进制:逢二进一
  • 八进制:逢八进一
  • 十六进制:逢十六进一

什么意思呢?以十进制逢十进一和二进制的逢二进一来说。
如下图所示:
在这里插入图片描述

2 常见进制在java中的表示

  • 二进制:由0和1组成,代码中以0b开头
  • 十进制:由0-9组成,java默认十进制,前面不加任何前缀
  • 八进制:由0-7组成,代码中以0开头
  • 十六进制:由0-9还有a-f组成,代码中以0x开头

十六进制里面a-f解释一下:

【0】【1】【2】【3】【4】【5】【6】【7】【8】【9】【a】【b】【c】【d】【e】【f】
0123456789101112131415

下面给出java代码例子:

public class HelloWord{public static void main(String[] args){System.out.println(17); // 十进制   17System.out.println(017); // 八进制  15System.out.println(0x123);  // 十六进制  291System.out.println(0b123);  // 语法错误}}

【注】:代码中写要加前缀,但是用System.out.println()出来的都是转换成十进制打印出来的

3 进制中的转换

(1)任意进制转十进制

公式: 系数 * 基数的权次幂 相加

  • 系数: 就是每一位上的数
  • 基数:当前进制数
  • 权:从右往左,依次为 0 1 2 3 4…

计算过程如下图:
在这里插入图片描述
除了上述通用的转换方法,部分进制之间还存在一些快速转换技巧。

二进制转十进制:8421快速转换法
其实就是查表
在这里插入图片描述

(2)十进制转其他进制

除基取余法

不断的除以基数(几进制,基数就是几)得到余数,直到商为0,再将余数倒着拼起来即可。

在这里插入图片描述

二、计算机中的存储

1 计算机的存储规则(文本数据)

学了进制过后,相信文本数据中的数数字你已经知道怎么存的了
在这里插入图片描述

99直接转成二进制,那字母‘a’呢?— ASCII码表

(1)ASCII码表

在这里插入图片描述
在这里插入图片描述
问题又来了,字母可以用ASCII码表,但是汉字这个表里面没有啊,怎么办?继续在这张表上面加就是了,然后就不断发展出来了多种编码规则

(2)编码规则的发展演化

    1. GB2312编码:1981年5月1日发布的简体中文汉字编码国家标准。收录7445个图形字符,其中包括6763个汉字。
    1. BIG5编码:台湾地区繁体中文标准字符集,共收录13053个中文字,1984年实施。
    1. GBK编码:2000年3月17日发布,收录21003个汉字,包含国家标准GB13000-1中的全部中日韩汉字,和BIG5编码中的所有汉字。
    1. Unicode编码:国际标准字符集,它将世界各种语言的每个字符定义一个唯一的编码,以满足跨语言、跨平台的文本信息转换。

在这里插入图片描述

【注】:这个过程中还产生了一些其他的编码,如我们常用的utf-8编码等。
总结一下就是,数字—>二

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/45779.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务器操作集合

服务器使用PC作为代理访问外网 1、PC上启动代理,比如nginx 下载nginx:http://nginx.org/en/download.html 修改配置文件,在conf下: http {include mime.types;default_type application/octet-stream;sendfile o…

深入理解二叉树遍历:递归与迭代实现

介绍 在数据结构中,二叉树是一种重要且常见的数据结构,它的遍历方式包括先序、中序和后序三种。本文将通过Java语言,详细讲解如何实现这三种遍历方式的递归和迭代版本。 二叉树定义 首先,我们定义二叉树的节点类 TreeNode&…

罗技K380无线键盘及鼠标:智慧互联,一触即通

目录 1. 背景2. K380无线键盘连接电脑2.1 键盘准备工作2.2 电脑配置键盘的连接 3. 无线鼠标的连接3.1 鼠标准备工作3.2 电脑配置鼠标的连接 1. 背景 有一阵子经常使用 ipad,但是对于我这个习惯于键盘打字的人来说,慢慢在 ipad 上打字,实在是…

面试真题 | ARM体系架构基础知识

ARM体系架构基础知识 什么是ARM架构?它有哪些特点和优势? 参考答案 ARM架构(Advanced RISC Machine)是一种处理器架构,广泛应用于移动设备、嵌入式系统和低功耗应用中。以下是ARM架构的一些特点和优势: 简化指令集:ARM采用精简指令集(RISC, Reduced Instruction Set Co…

cv::Mat 操作多维矩阵的思路

现在有一个 [20(rows) * 20(cols) * 144(channels)]的矩阵&#xff0c;我们想截取一个[20 * 20 * 80]的子矩阵&#xff1a; int dims[3] {20, 20, 144}; cv::Mat mat(cv::Size(dims[1], dims[0]), CV_32FC(dims[2]), (void*)input); const std::vector<cv::Range>&…

conda install问题记录

最近想用代码处理sar数据&#xff0c;解放双手。 看重了isce这个处理平台&#xff0c;在安装包的时候遇到了一些问题。 这一步持续了非常久&#xff0c;然后我就果断ctrlc了 后面再次进行尝试&#xff0c;出现一大串报错&#xff0c;不知道是不是依赖项的问题 后面看到说mam…

模块化(一)nodejs

模块化 一.模块化的基本概念1.1 什么是模块化1.2 模块化规范 二.Node.js 中的模块化2.1 Node.js 中模块的分类2.2 加载模块2.3 Node.js 中的模块作用域2.4 向外共享模块作用域中的成员 一.模块化的基本概念 1.1 什么是模块化 模块化 是指解决一个 复杂问题 时&#xff0c;自顶…

从Centos7升级到Rocky linux 9后,网卡连接显示‘Wired connection 1‘问题解决方法

问题描述 从Centos7升级到Rocky9后, 发现网卡eth0的IP不正确。通过nmcli查看网卡连接&#xff0c;找不到name为eth0的连接&#xff0c;只显示’Wired connection 1’ 查看/etc/NetworkManager/system-connections/&#xff0c;发现找不到网卡配置文件。 原因分析 centos7使…

华为OD机试 - 堆内存申请(Java 2024 D卷 100分)

华为OD机试 2024D卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;D卷C卷A卷B卷&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;每一题都有详细的答题思路、详细的代码注释、样例测…

Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制

章节内容 上节我们完成了&#xff1a; ZooKeeper 集群配置ZooKeeper 集群启动ZooKeeper 集群状况查看Follower 和 Leader 节点 背景介绍 这里是三台公网云服务器&#xff0c;每台 2C4G&#xff0c;搭建一个Hadoop的学习环境&#xff0c;供我学习。 之前已经在 VM 虚拟机上搭…

基于SpringBoot+Vue的数码论坛系统(带1w+文档)

基于SpringBootVue的数码论坛系统(带1w文档) 基于SpringBootVue的数码论坛系统(带1w文档) 数码论坛系统能够通过互联网得到广泛的、全面的宣传&#xff0c;让尽可能多的用户了解和熟知数码论坛系统的便捷高效&#xff0c;不仅为用户提供了服务&#xff0c;而且也推广了自己&…

【pytorch】手写数字识别

https://blog.csdn.net/qq_45588019/article/details/120935828 基本均参考该博客 《深度学习原理Pytorch实战》 初步处理 导包 import torch import numpy as np from matplotlib import pyplot as plt from torch.utils.data import DataLoader from torchvision import tr…

python pandas处理股票量化数据:笔记3

获取tushare日线数据 示例 pro ts.pro_api()df pro.daily(ts_code000001.SZ, start_date20180701, end_date20180718)#多个股票 df pro.daily(ts_code000001.SZ,600000.SH, start_date20180701, end_date20180718) 或者 df pro.query(daily, ts_code000001.SZ, start_da…

Cypress UI自动化之安装环境

注&#xff1a;macOS系统 一、git环境 略 二、node环境 1、安装nvm 前提&#xff1a;有装过Homebrew&#xff0c;参考adb使用方法文档 1、安装nvm&#xff1a;首先要保证之前没有安装过node&#xff0c;如果之前安装过&#xff0c;先 brew uninstall node brew install n…

计算云服务4

第四章 弹性伸缩服务 什么是弹性伸缩(AS) 弹性伸缩(Auto Scaling&#xff0c;AS)是根据用户的业务需求&#xff0c;通过策略自动调整其业务资源的服务。用户可以根据业务需求自行定义伸缩配置和伸缩策略&#xff0c;降低人为反复调整资源以应对业务变化和高峰压力的工作量&am…

C# 浅谈线程安全的集合ConcurrentQueue

ConcurrentQueue 是 C# 中另一个线程安全的集合&#xff0c;它位于 System.Collections.Concurrent 命名空间中。 Enqueue(T item): 向队列的末尾添加一个元素。如果操作成功&#xff0c;则返回 true。 TryDequeue(out T result): 尝试从队列的开头移除并返回一个元素。如果队列…

Perl语言之标量

Perl对于变量的定义&#xff0c;分为三种类型&#xff1a;标量、数组和哈希。   标量是 Perl 语言中最简单的一种数据类型。标量中可以存储整数、字符串、浮点数、字符等&#xff0c;数据格式不做严格区分。在使用标量时需要再变量前面加$&#xff0c;如&#xff1a; #! /us…

IOS热门面试题一

GCD&#xff08;Grand Central Dispatch&#xff09;是什么&#xff1f;如何在iOS中使用它&#xff1f; GCD&#xff08;Grand Central Dispatch&#xff09;是什么&#xff1f; GCD&#xff08;Grand Central Dispatch&#xff09;是苹果公司开发的一套多线程编程的API&…

C语言 | Leetcode C语言题解之第231题2的幂

题目&#xff1a; 题解&#xff1a; const int BIG 1 << 30;bool isPowerOfTwo(int n) {return n > 0 && BIG % n 0; }

为什么远程办公不被公司普遍接受?

为什么远程办公不被公司普遍接受? 如果说传统企业不接受远程公办,那么为什么互联网企业也不接受远程办公呢? VPN 虚拟专用网络(Virtual Private Network) VPN 是远程办公的基石,没有VPN远程办公处处受限。什么是VPN呢? 它能实现跨地域,不受地域限制地把办公室网络和个…