- 博客(48)
- 资源 (1)
- 收藏
- 关注
原创 Keil汇编相关知识
处理方式:对该操作数进行循环右移偶数位,如果右移过程中,该操作数右移的值有在0-255这个范围内,说明该操作数是一个立即数,此时将循环右移的值保存在指令空间的[7:0]位,循环右移的偶数位数除以2的值保存到指令空间的[11:8]中(快速判断是否立即数:起始位为1和结束位为1之间的位数要小于7是立即数),当循环右移始终得不到0-255的数据,此时将其取反,如果取反值在0-255之间,该数据也是立即数。将第一操作数寄存器的值减去第二操作数,结果保存到目标寄存器,如果在指令后加s,结果会影响CPSR条件位。
2024-06-25 20:46:49 1149
原创 ARM相关理论知识
2.汇编指令:由于机器指令对人类不友好(记不住),当我们和计算机进行交互时不能直接通过机器指令来进行,这个时候汇编就出现了,每一条汇编指令都可以理解为一条机器指令的标识,当我们编写一条汇编指令时,相当于得到了一条机器指令,就可以让运算器进行对应的运算。2.精简指令集(RISC):结构简单,选取了使用频率高的简单指令,指令长度固定,大小固定,多为单周期指令,在功耗,体积,价格方面多有优势,多用于嵌入式领域。C[29]:加法运算产生进位,C位被自动置1,否则为0,减法运算产生借位,C位被自动置0,否则为1。
2024-06-24 21:08:36 1158
原创 QT/QMessageBox/QTimerEvent/使用定时器制作一个闹钟
2.制作对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示登录成功,提供一个Ok按钮,用户点击OK后,关闭登录界面,跳转到其他界面;如果账号和密码不匹配,弹出错误对话框,给出信息"账号和密码不匹配,是否重新登录";并提供两个按钮Yes/No,用户点击Yes后,清除密码框中的内容,继续让用户进行登录,如果用户点击No按钮,则弹出一个问题对话框,给出信息"您是否确定要退出登录?“,并给出两个按钮Yes/No,用户点击Yes后,关闭登录界面,用户点击No后,关闭对话框,继续执行登录功能;
2024-06-19 00:49:04 1432
原创 QSS/QFrame/connect/两个窗口界面的连接/窗口的优化
3.设置纯争窗口后,有关闭等窗口功能。3.设置纯争窗口后,有关闭等窗口功能.2.需要有图层的叠加(QFrame) 2.需要有图层的叠加(QFrame)4.如果账号密码正确,则实现登录界面关闭,另一个应用界面显示。制作一个应用程序的登录界面,并对界面进行相关优化。
2024-06-17 21:57:42 539
原创 QT信号与槽/窗口组件优化/使用QT制作QQ登录界面
将登录按钮使用qt4版本的连接到自定义的槽函数中,在槽函数中判断u界面上输入的账号是否为"admin",密码是否为"123456"如果账号密码匹配成功,则输出"登录成功”,并关闭该界面,如果匹配失败,则输出登录失败,并将密码框中的内容清空。使用手动连接,将登录框中的取消按钮使用第二中连接方式,右击转到槽,在该槽函数中,调用关闭函数。
2024-06-14 22:04:32 854
原创 继承/多继承/菱形继承/虚继承/多态
在这个场景中,我们可以将动物比作是不同的类,而每种动物表演则是类中的函数。而讲解员则是一个基类,他可以根据每种动物的特点和表演,进行相应的介绍。想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有一位讲解员,他会为每种动物表演做简单的介绍。定义一个基类 Animal,其中有一个虛函数perform(),用于在子类中实现不同的表演行为。比喻:动物园的讲解员和动物表演。
2024-06-11 20:28:00 456
原创 静态数据成员/静态成员函数/运算符重载
(5)另外, RMB 类还包含一个静态整型成员变量 count,用于记录当前已创建的 RMB 对象的数量。每当创建一个新的 RMB 对象时,count 应该自增 1;(1)重载算术运算符 + 和 -,使得可以对两个 RMB 对象进行加法和减法运算,并返回一个新的 RMB 对象作为结果。(2)重载关系运算符 >,判断一个 RMB 对象是否大于另一个 RMB 对象,并返回 true 或 false。(3)重载前置减减运算符 --,使得每次调用时 RMB 对象的 yuan、jiao 和 fen 分别减 1。
2024-06-10 16:48:01 469
原创 C++类/引用
封装一个矩阵类,width,hight属性设置private,初始化函数init,宽度,高度set_w,set_h函数属性设置成public,输出矩形的周长与面积。
2024-05-30 20:22:19 260
原创 在C++中自定义命名空间,在命名空间中定义string变量,同时定义一个函数实现单词逆置
【代码】在C++中自定义命名空间,在命名空间中定义string变量,同时定义一个函数实现单词逆置。
2024-05-27 20:39:04 246
原创 网络编程-TCP并发服务器-多点通信-域套接字
思路:将与客户端建立连接设置成父进程,将与客户端通信设置成子进程,考虑到客户结束通信需退出子进程,并防止僵尸进程,需回收子进程资源,故将回收进程函数设置成非阻塞,同时利用signal函数(SIGCHLD)实现一旦发现子进程死亡,立即发送信号回收进程资源,最后还需考虑子进程是完全拷贝父进程内存,需分别关闭文件描述符。思路:主线程实现与客户端的连接,子线程实现与客户端实现通信,由于线程是去运行指定的代码片,所以避免不了局部变量问题,所以需注意指定运行的代码与主函数之间变量的关系,需要传参。
2024-05-21 21:13:19 677
原创 IO—消息队列+管道
当键盘按ctrl+c的时候,切换消息读取方式,一般情况为读取指定编号的消息,按ctr1+c之后,指定的编号不读取,读取其他所有编号的消息。使用消息队列实现的2个终端之间的互相聊天。
2024-05-13 20:56:43 265
原创 多线程-写入读取文件,使用同步逻辑
要求使用线程的同步逻辑,保证一定在主线程向文件中写入数据成功之后,子线程才开始运行,去读取文件中的数据。在一个进程中,创建一个子线程。主线程负责:向文件中写入数据。子线程负责:从文件中读取数据。
2024-05-10 20:46:28 629
原创 文件IO-使用dup2实现错误日志功能及判断文件权限,并终端输出
使用 write 和 read 实现文件的拷贝功能,注意,代码中所有函数后面,紧跟perror输出错误信息,要求这些错误信息重定向到错误日志 err.txt 中去。要求每一次权限更改成功之后,立刻在终端显示当前文件的权限信息 :使用 ls -l显示(使用 system函数配合shell指令 ls -l 来实现)2:判断一个文件是否拥有用户可写权限,如果拥有,则去除用户可写权限,如果不拥有,则加上用户可写权限。权限更改函数:就是chmod函数,自己去man一下。1:使用 dup2 实现错误日志功能。
2024-05-08 21:16:04 540
原创 标准IO学习
使用fprintf将数组中的5个学生信息,保存到文件中去 下一次程序运行的时候,使用fscanf,将文件中的5个学生信息,写入(加载)到数组中去,并直接输出学生信息。申请该结构体数组,容量为5,初始化5个学生的信息。
2024-05-06 21:40:32 541
原创 嵌入式学习Day19
输入一个数字,实现数字的逆置,不使用字符串截取的方式代码:#!/bin/bashecho number reverseread -p "please number:" numt=0while [ $num -ne 0 ]do t=$((t*10+num%10)) ((num/=10))doneecho $t运行结果:二、打印九九乘法表代码:for((i=1;i<=9;i++))do for((j=1;j<=i;j++)) do if
2024-04-26 21:10:26 1045
原创 嵌入式学习Day18
三、输入成绩实现等级判断,A:90-100,B:80-89,C:70-79,D:0-69。二、输入一个数判断是否水仙花数。一、输入两个数,实现排序。
2024-04-26 19:11:02 204
原创 嵌入式学习Day14
1、储存方式:链表的元素在内存中通过指针连接,不需要连续空间,存储空间是动态分配的,顺序表的元素是在内存顺序存储,通过数组下标访问,存储空间是顺序分配。2、访问效率:链表不支持随机访问,查找或访问需从头节点开始,访问效率低,顺序表支持随机访问,可通过数组下标访问,访问效率高。3、插入与删除操作:链表通过修改相关节点指针,具有较高效率,顺序表需要移动元素,效率低。4、空间利用率:链表每个元素都需要空间存储指针,空间利用率低。四、双向链表头插、头删、尾插、尾删、按位置插入、按位置删除。三、链表与顺序表的区别。
2024-04-17 21:03:26 480
原创 嵌入式学习Day12
一、三顺序表代码://创建S->len=0;return S;//判空return -1;1:0;//判满return -1;1:0;//头插return;\n");return;i>=0;i--)S->len++;}//尾插return;\n");return;S->len++;//头删。
2024-04-15 21:11:57 771
原创 嵌入式学习Day11
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/slander_1120/article/details/137649066。一、从堆区申请能存5个结构体变量的数组的空间,完成数组中成员的输入,根据学生成绩,用选择排序的方式,对学生排序并输。代码:(test63.3.c)
2024-04-14 20:34:27 665
原创 嵌入式学习Day9
39.若有定义int x[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};40.若有说明:char *language[]={“FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};则以下不正确的叙述是。34.若有定义:int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;25.若有程序段:int a[2][3],(*p)[3];30.若有定义:int b[4][6],*p,*q[4];
2024-04-09 21:06:47 1840
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人