- 博客(26)
- 资源 (2)
- 收藏
- 关注
原创 操作系统与进程工作原理
操作系统与进程工作原理单CPU单核的计算机,微观视角下,同一个时刻只能执行一个指令开机->指令1->指令2 ->指令3 ->指令4->… ->关机以下讲解都是以单CPU单核计算机为基础的。一、操作系统(OS)OS的主要职责是协调 ,OS是专门用来协调工作的软件。多用户 --多场景下任务工作A ------------------------ 指令 a1,a2,a3,a4,a5,a6工作B ------------------------ 指令
2022-04-24 15:56:35 627
原创 计算机工作原理
计算机工作原理一、计算机组成冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构,即指令是一种特殊的数据。数学家冯·诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备),这套理论被称为冯·诺依曼体系结构。计算机:运算器 + 控制器 +存储器+ 输入设备+ 输出设备计算机 : CPU + I/O + 内部数据交换总线(BUS)处理器 (CPU)=
2022-04-22 21:06:09 772
原创 java之查找斐波那契数的三种方法
1.斐波那契数列规律:f(1) =1 f(2)=1 … f(n)=f(n-1)+f(n-2)2.代码部分2.1 递归写法时间复杂度指数级别 2^n空间复杂度 o(N)public static int fib(int n){ if(n<1){ return -1; } if(n==1 || n==2){ return 1;
2022-04-13 10:37:29 859
原创 Java之泛型
一、 泛型1.定义指在定义类时不会设置类中的属性或方法参数的具体类型,而是在类使用时(创建类时)定义类型。在上图中,类声明后面<>中T代表类型参数,T可以代表任意类型。此时,value和value1是没有具体类型的,只有在使用时才告诉编译器类型。上图出错,因为参数类型只有一个,且myclass定义为String类型,所以value1只能是String类型。2.定义多个类型参数上面提到的value和value1不一定是相同的类型,在声明中多写几个类型参数,如下所示:public
2022-01-25 17:16:18 83
原创 Java之内部类详解
一、内部类1.定义:定义在类中的另一个(不加static)类结构(例如人和心脏)下图中,Inner就是一个内部类2.种类:内部类有四种:(1)成员内部类(2)静态内部类(3)方法内部类(4)匿名内部类 (Lambda表达式前身)二、成员内部类1.使用规则/方法(1)成员内部类的创建依赖外部类对象的创建(例如没有人这个对象,就无法创建心脏这个对象)(2)内部类是一个相对独立的实体(3)内部类可以直接访问外部类的元素和方法(包括私有域),外部类必须通过内部类的对象来访问内部类的元素和
2022-01-24 18:17:07 1075
原创 java之 接口
接口1.java 使用interface关键字定义接口,接口中只有全局常量和 抽象方法(JDK8之前,JDK8扩展了default方法)。子类使用implements实现接口2.一般接口命名使用 I 开头与类做区分3.子类实现接口可以使用impl结尾,表示是接口的子类接口使用原则:1.接口中只有public权限,接口中只有全局常量和抽象方法。在接口中 abstract,final,static,public都可以省略。代码如下:public interface IMessage {
2022-01-10 16:36:18 360
原创 Java之类的多态,向上转型,方法覆写,抽象类一次弄懂
java之类的多态与接口先来回顾一下类的实例化类名 引用=new 类名();Animal animal = new Animal();Cat cat = new Cat();Dog dog = new Dog();下面有三个类,动物类,猫类和狗类继承动物类。1.向上引用向上引用最大意义在于参数统一化。可以用一个父类引用,接收所有子类实例。向上引用发生在三个地方:1.1直接赋值父类名 父类引用=new 子类实例();public class Test { pu
2022-01-10 14:07:31 563
原创 Java逻辑控制
逻辑控制1.顺序结构2.分支结构2.1 if语句2.2 switch 语句3.循环结构3.1 while循环3.2 for 循环3.3 do while 循环4.输入输出4.1 输出到控制台4.2 从键盘输入
2021-11-18 16:50:09 229
原创 Java数据类型与运算
Java数据类型与运算1.八大基本变量1.1整形变量1.2长整型变量1.3双精度浮点型变量1.4单精度浮点型变量1.5字符类型变量1.6字节类型变量1.7短整型变量1.8布尔类型变量2.引用数据类型字符串类型变量3.类型转换4.运算符...
2021-11-18 16:43:47 183
原创 程序环境和预处理
程序的翻译环境和执行环境在ANSIC的任何一种实现中,存在两个不同的环境1.翻译环境:源代码被转换为可执行的机器指令(即文本->二进制)2.执行环境:用于实际执行代码。(加载到内存)以下1-3都为翻译环境,4为执行环境1.预处理: 宏替换,去注释,头文件展开,条件编译2.编译:将c编译成汇编 (语法,词法分析,符号汇总)3.汇编:将汇编转成目标二进制文件4.链接:可执行程序.exe (链接时引入程序调用的函数)预处理1.预定义符号:__FILE__ 进行编译的
2021-11-14 20:46:40 217
原创 C语言文件操作(二)
1.文件的随机读取可以调整位置,想读写哪就读写哪1.1 fseek函数,设置光标位置根据文件指针的位置和偏移量来定位文件指针int fseek ( FILE * stream, long int offset, int origin );文本文件时,origin参数选择SEEK_SET 文件起始位置为偏移起始位置SEEK_ CURSEEK_END 文件末尾位置为偏移起始位置FILE * 指向的文件offset 偏移量origin 起始点 FI
2021-11-11 11:16:01 453
原创 c语言文件操作(一)
1. 为什么使用文件我们一般数据持久化的方法有,把数据存放在磁盘文件、存放到数据库等方式。使用文件我们可以将数据直接存放在电脑的硬盘上,做到了数据的持久化。2.什么是文件磁盘上的文件是文件。但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件(从文件功能的角度来分类的)2.1程序文件包括源程序文件(后缀为.c),目标文件(windows环境后缀为.obj),可执行程序(windows环境后缀为.exe)。2.2数据文件文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从
2021-11-10 20:23:13 692
原创 C语言之动态内存管理,内存分配以及柔性数组使用
动态内存管理1.为什么存在动态内存分配我们以前常用的内存开辟方式:int n=20; 栈空间开辟四字节char a[10]={0}; 栈上开辟十个字节的连续空间上述开辟空间的方式有两个特点:1.空间开辟大小是固定的2.数组在申明的时候,必须指定数组的长度,它所需要的内存在编译时分配。但是对空间的需求,不仅是上述情况。有时我们所需要的空间大小在程序运行的时候才能知道,那数组在编译时开辟空间的方式就不能满足了。这时候就只能试试动态开辟了。2.动态内存函数的介绍ma
2021-11-05 17:17:15 205
原创 C语言之枚举和联合
枚举1.什么是枚举?把可能的值列举出来。例如一周的星期一到星期日,可以一一列举。月份有12个月,可以一一列举。2.枚举类型定义enum Day { 枚举类型 Mon, 枚举常量 Tues, Wed, Thur, Fri, Sat, Sun };enum Color { 枚举类型 RED, 枚举常量 GREEN, BLUE };以上定义的enum Day 和 enum Color都是枚举
2021-11-01 21:29:48 182
原创 C语言之位段
位段:环境vs20171.什么是位段?位段的声明和结构是类似的,有两个不同:1.1 位段的成员必须是int ,unsigned int ,signed int ,char,必须是整形。1.2 位段的成员名后边有一个冒号和一个数字。struct A { int a : 2; int b : 4; int c : 10; int d : 30; }; printf("%d\n", sizeof(struct A));int a:2 代表a在32位中只占2
2021-11-01 19:30:23 110
原创 C语言之结构体内存对齐
C语言之结构体内存对齐我们已经掌握了结构体的基本使用,现在来深入探讨一个问题:计算结构体的大小。结构体大小的计算与结构体的内存对齐规则有关对齐数影响因素默认对齐数: windows默认8字节对齐预编译指令#pragma pack(n)手动设置 n–只能填1 2 4 8 16成员变量自身大小对齐数为上述三者中最小的值结构体对其规则:第一个成员在结构体变量偏移量为零的地址处。其他成员变量要对齐到对齐数的整数倍。结构体总大小为最大对齐数的整数倍。如果嵌套了结构体的
2021-11-01 16:40:58 116
原创 C语言之结构体初阶
1.什么是结构体?结构体是一些值的集合,这些值成为成员变量。结构体的每个成员变量可以是不同类型的变量。结构体一般是某类事物其属性的集合。例如,学生这个类型,通常会有,名字,学号,性别,年龄等。2.结构体的声明结构声明struct tag{ member-list;}variable-list;结构体成员类型:结构体的成员可以是标量,数组,指针,甚至是其他结构体例如一个学生:struct Stu{ char name[20]; int age; ch
2021-11-01 11:33:14 281
原创 C语言之浮点形在内存中的存储问题
1.引入问题作为一个引子,我们先来看一个简单的代码。 int n = 9; float *pfloat = (float *)&n; printf("n的值:%d\n", n); printf("*pfloat的值:%f\n", *pfloat); *pfloat = 9.0; printf("num的值为:%d\n", n); printf("*pfloat的值为%f\n", *pfloat); 根据该例,说明浮点型数的读取和存储与整形是不一样的。2.
2021-10-09 20:02:43 279
原创 C语言整形在内存中的存储问题
整形在内存中的存储问题1. 整形家族char (1字节) : unsigned char signed char short(2字节): unsigned short signed short int (4字节): unsigned int signed int long(8字节) : unsigned long signed short3. 如何存储:计算机中都是以二进制形式存储的计算机中的有符号数有三种表示方式,即原码,反码,补码。符号位0表示
2021-09-27 21:24:56 105
原创 c语言一个数的二进制有几个1
实现一个函数的二进制有几个11.方法一:利用除法和取余,如下图所示:int NumOf1(int x) { int count = 0; while (x) { if (x % 2 == 1) { count++; } x /= 2; } return count; }int main() { int num = 11; int n = NumOf1(num); printf("%d的二进制中有几个1:%d\n", num, n); return 0; }
2021-09-27 15:40:57 149
原创 c语言交换两个数字的三种方法
写函数实现交换两个数字1.方法一:创建临时变量int swap(int *x, int *y) { int temp = 0; temp = *x; *x = *y; *y = temp;}int main() { int a = 10; int b = 5; printf("before:a=%d b=%d\n", a, b); swap(&a, &b); printf("after:a=%d b=%d\n", a, b); return 0; }
2021-09-24 15:17:32 3496
原创 c语言之五子棋游戏
一、游戏设计思想1.该代码设置为 电脑vs 玩家,电脑为随机选择位置2.有一张游戏棋盘,每次移动棋子的数据都会保存下来二、图片解说三、代码分析1.main.c#include "chess.h"void Menu() { printf("+----------------------------------------------------+\n"); printf("| |\n");
2021-09-13 16:35:32 136
原创 C语言之扫雷小游戏
最近学习到了c语言的数组,用数组来实现扫雷小游戏。*一、设计思想: **1.用数组实现两张表格,分别用于存储埋雷情况和游戏时的表格,表格大小是一样的(10x10)。 2.埋雷情况表,‘1’表示有雷,‘0’表示没有雷。 3.游戏时表格,没有选择的方格用‘*’来表示,当选择方块时,有雷,则显示游戏输了,同时显示埋雷情况的表格。无雷则在该方格上显示周围有雷的数量。**二、图片解释为了更清楚的理解,以下用几个图片表示一下游戏表格和埋雷表格1.游戏表格,初始时全用*遮盖2.游戏中表格显示
2021-09-01 21:41:37 116
原创 Xshell个人家庭免费版
免费版xshell下载此版本为xshell7个人免费版,亲测可用复制这段内容后打开百度网盘App,操作更方便哦。 链接:https://pan.baidu.com/s/1M2LX6u5G5jRh20BHy9h1Wg 提取码:3x7h
2020-12-16 21:06:05 1050 1
原创 Xftp个人家庭版免费下载
Xftp-7个人家庭版免费下载,无任何修改。复制这段内容后打开百度网盘App,操作更方便哦。 链接:https://pan.baidu.com/s/11pnqBhTcwjWlun8iz7wffQ 提取码:5obm
2020-12-16 21:02:08 1034 2
OpenFlow标准_中文版.pdf
2021-09-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人