一、学习指针前,先了解两个问题 1、内存是怎么编号的? 32位 — 32根地址线 — 物理线 — 通电 — 1/0 64位 — 64根地址线 — 物理线 — 通电 — 1/0 电信号转换成数字信号:1和0组成的二进制序列 以32位电脑为例: 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
协同过滤推荐算法 迄今为止,在个性化推荐系统中,协同过滤技术是应用最成功的技术。目前国内外有许多大型网站应用这项技术为用户更加智能(个性化、千人千面)的推荐内容。 核心思想: 协同过滤一般是在海量的用户中发掘出一小部分和你品位比较类似的,在协同过滤中,这些用户成为邻居,然后根
八位表示一个字节,所以只有八个全加器 能与1相加=0的数则是-1,我们将0000 0001 与 1111 1111相加得到1 0000 0000 因为全加器只有八位再向第九位进一的时候不会被接受,也可称之为溢出。
剑指 Offer 65. 不用加减乘除做加法 难度简 写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。 位运算模拟加法 参考链接:https://blog.csdn.net/weixin_41521306/article/details/98784642?spm=1001.2101.3001.6650.3&utm_medium=d
原码: 符号位 + 其本身(二进制) 正数的符号位是0 负数的符号位是1 such as: +1 的原码: 0000 0001 -1 的原码: 1000 0001 反码: 正数的反码就是其原码 负数的反码就是在其原码的基础上 符号位不变 其余位取反 such as: +1 的反码: 0000 0001 -1 的反码: 1111 1110 补码: 正数的补码就是其原
之前那篇文章,讲过Json里的序列化结果为: { "name":"chenpp","age":21} -- 一共26个字节,而想要将其进行进一步压缩,就需要去掉一些冗余的字节 思路:1)能不能去掉定义属性(约定1=name,2=age) 约定了字段,约定了类型 去除分隔符(引号,冒号,逗号之类的) 2)压缩数字,因为日常经常使用到
数据类型 Day1 0、 计算机只是一个工具,计算的工具,通过计算来帮我们解决问题 计算机保存问题中数据? 先保存问题的抽象数据,然后再对抽象数据进行某一种运算 运算后就能得到一个结果,数据应该怎么去保存? 数据有什么属性: 大小 整数/小数 .... 这些属性我们就是通过数据类型来体现。
二进制中1的个数 题目链接 牛客网 题目描述 输入一个整数 n ,输出该数32位二进制表示中1的个数。其中负数用补码表示。 数据范围:- 2^{31} <= n <= 2^{31}-1−231<=n<=231−1 即范围为: -2147483648<= n <= 2147483647−2147483648<=n<=2147483647 实例1 输入: 10 返回值: 2 说明
关于我写的程序啥都不是还有脸上传的事 之前一直在用txt记笔记,但是后来因为代码太多了,所以想到了记到csdn上 下面是正文,无顺序,想到哪写到哪。 一些基础的 -在138译码器中,前3位代表5 6 7 P2=0xA0对应着1010 0000,则5 6 7为101,为1111 1011,Y5为0,则配置的是Y5C,控制P00-P07 P2=0x80
ds 段寄存器 byte word dword qword mov eax, dword ptr ds:[0x123456] xor 异或 清零操作 lea :将有效地址传送到指定的寄存器 有符号位最大值:0111 1111 =》127=》7F 最小值: 1111 1111 =》-128=》FF 运算指令 adc:(a+b)+cf=>a sbb:(a-b)-cf=>a inc:a++ dec:a-- mul:无符号乘,默认
1.进制的表示 进制:进位计数制,10进制,7进制(周),24进制(小时),60进制(分和秒) 十进制:12345.6 == 1*10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0 + 6*10^-1 按权重展开相加 二进制(0~1,共两个符号,前面加一个0):10101 == 1*2^4 + 0*2^3 + 1*2^2 + 0*2^1 + 1*2^0 = 16+4+1 = 21 八进
#include<stdio.h> int main() { char c; unsigned char uc; unsigned short us; c = 128; uc = 128; us = c + uc; printf("0x%x\n", us); us = (unsigned char)c + uc; printf("0x%x\n", us); us = c + (char)uc; pr
基本数据类型 六大基本数据类型:short、int、long、float、double、char 整数形(定点型) C语言标准并没有明确给出每种整形的具体大小,它仅仅给出了一个大小关系的建议。 sizeof(short)<=sizeof(int)<=sizeof(long)<=sizeof(long long) 1、无符号整形uns
报错如下: 可以看出时standardValue字段出现了问题。 错误代码: @Override public Result edit(ProductCheckItem productCheckItem) { UserDTO user = SessionCache.get(); productCheckItem.setUpdateTime(new Date()); productCheckItem.setUpda
书里看到这样一个题目,让读者看看下面代码两次输出结果是否一致,为什么 int i = 0xcffffff3; printf("%x\n", 0xcffffff3>>2); printf("%x\n", i>>2); 输出结果 33fffffc f3fffffc 下面列出分析思路。 移位结果计算 0xcffffff3: 1100 1111 1111 1111 1111 1111 1111 0011 右移
目录 符号 1. 注释符号 1.1基本注释注意事项 1.2 y=x/*p 1.3 注释的基本要求(原文) 1.4 “\” 的2种作用 1.4.1 续航作用 1.4.2 转意作用 2. \r vs \n 2.1 问:回车和换行是一样的吗?是什么? 2.2 打印出来d,为什么呢?超过四个元素就会报错,又为什么呢? 2.3 为什么等于4呢? 2.4 为何计
一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack)— 由编译器自动分配释放 ,存放为运行函数而分配的局部变量、函数参数、返回数据、返回地址等。 其操作方式类似于数据结构中的栈。(内存分配时,与堆相向而生,因此申请内存是有限的,运用不当,会出现栈溢出) 2、堆区(heap)
百度云: 链接:https://pan.baidu.com/s/1aaOk2DMZ63UbIZWz8ZFkGQ 提取码:1111 本人的电脑:32g运行内存,i7处理器,希望一切顺利。 点击Set-up.exe安装程序 选择默认位置或者自己习惯的位置,注意不要有空格和中文 接下来是安装:需要2-4分钟。 桌面出现了这个图标
目录 个人博客 www.tothefor.com 0. 位运算预知识 优先级别由高到低依次为:按位取反( ~ ),按位与( & ),按位异或( ^ ),按位或( | )。 一些特殊的重要知识点,记着,怕忘了。 任何数与 0 异或等于它本身,即 n ^ 0 = n。 理论简单说一下。 0.1 按位取反(~) 这是最简单的,将0变1,1变0。 ~15 =
今天做题查询了原码反码以及补码的转化,所以今天就大致写一点相关知识吧! 1. 原码 原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值. 比如如果是8位二进制: 原 = 0000 0001 原 = 1000 0001 第一位是符号位.第一个数1代表负‘-’,0代表正‘+’; 因为第一位是
引入混合器的页面都会先在本页面mounted之前执行混合器的代码 <script> import {logMixins} from '@/utils/masterLogMixins.js'; export default { name: "DailyWork", mixins: [logMixins], data: function() { return { }; }, props:
1. 原码、反码、补码简单介绍 原码、反码、补码都是含有一个符号位的、对带符号数的二进制表示,对应于同一个真值。 原码带符号位直接读出来就是真值。 正数三码合一。 负数的反码为符号位不变(即保持为1),其余位取反(相反转换可用同样方法); 负数的补码为符号位不变(即保持为1),其余位取反
文章目录 前言:(一)按位与& (双目运算符)(1)迅速清零(2)保留指定位(3)判断奇偶性 (二)按位或 | (双目运算符)(1)修改数据的指定位的值 (三)按位取反~(单目运算符)(1)方便表示一个数字,通常和& | 结合使用 (四)按位异或^(双目运算符)(1)按位异或的规律(2)判断两个数是否相等(3)交换两个数(4)一个整型数组里的valu
数据宽度 计算机数据 在数学上的数字是没有大小限制的,可以无限大。但在计算机中,由于硬件的制约,数据是有长度限制的,超过数据宽度的数据就会被丢弃 无符号数:正数 有符号数:正数 和 负数 例子:数据宽度为4时,即数据只能存储4位二进制位0000~1111 无符号数: 十进制 0 1 2 3 4 5 6
剑指 Offer 65:不用加减乘除做加法 题目解题方法一:位运算 题目 题目链接 写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。 示例: 输入: a = 1, b = 1 输出: 2 解题 方法一:位运算 参考链接 由于这种解法对于负数也是可以的