自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 GUI开发环境搭建配置——ImGui篇

至此,imgui的开发环境配置步骤已经完成了,更多内容可前往以下我的博客主页查找个人知乎主页——南岩亦凛汀个人优快云博客主页——南岩•凛汀。

2025-03-23 18:22:35 544

原创 GUI开发环境搭建配置——wxWidgets篇

wxWidgets是什么?这里引用网上的一段话介绍:wxWidgets是一个跨平台的C++图形用户界面库,它允许开发者创建在多个操作系统上运行的应用程序,同时保持本地的外观和感觉。wxWidgets支持多种操作系统,如Windows、Linux和macOS,并且提供了丰富的控件和工具,以帮助开发者构建功能强大且用户友好的应用程序。

2025-03-22 16:08:20 493

原创 【PeachCompiler编译器原来可以这么造出来的】编译器概述

编译器可以将合法的易于人类阅读理解的源程序转化翻译为易于机器(计算机)理解的目标程序。现在我们看到的仅仅是编译器的结果,要造一个编译器我们首先需要确定一个具体的编译器。PeachCompiler正是基于C语言的编译器。

2024-07-13 11:41:12 346

原创 C语言数组和结构相互“借鉴”的小技巧

经过测试,我还发现了它和数组占用的内存空间一样大!这意味着完全可以利用指针进行一些灵活且方便的操作,以下这段代码用在前面的结构中是没有问题的。定义包含一个数组成员的结构,并初始化两个结构变量,先显示一遍a中的数据,经过赋值再显示一次,最终运行结果验证此方法完全可行。我们都知道C语言数组是不能直接整体赋值的,但当我们遇到数组间需要进行大量赋值操作时,难道就只能写一个个的循环吗?只要给数组披上一层结构的外衣不就行了,看看我是怎么做的。在结构a中,其本身的地址就是成员数组Array首地址。

2023-04-05 11:02:05 147

原创 【创作赢红包】对于近期ChatGPT等热门话题,发表一下自己的感想

我切实感受到了多动手对于掌握编程的重要性,我为这个项目亲手敲了几千条指令,每个细节都需要精心打磨,先是在一个源文件里打造一个可以正常跑起来的雏形框架,后又拆分成多个文件渗透模块化的思想,最终这个项目才有可拓展性。更加广泛地应用于各行各业是必然的,尽管近期推出的ChatGPT备受关注,但大可不必为人工智能取代人力而焦虑,人工智能要真正做到人那样的思考还是非常非常非常遥远的,而当今人类的精神生产力还是严重匮乏,我们急需从物质生产中解放出来,全面进入一个精神生产力时代,这个过程是越快越好。

2023-04-02 11:18:56 170

原创 对子程序(函数)传参的理解,不要再错了

首先问一个问题:把指针作为参数就是传引用的方式传递参数,这种说法对吗?

2022-12-09 19:57:31 661

原创 计算机系统底层架构思路

学会架构的意义现在已经有大量的软件开发框架可供我们选用,为什么还要花时间精力去学习架构?这里我说明两点:其一,任何框架只能是适用大部分场景,要记住框架是适应一系列软件开发的,而不是专为你开发的软件所用。造汽车的技术框架就不再适合造船艇,更不适合造飞机。一样的道理,如果不了解框架的架构思路,就很可能在出了严重问题时束手无策。其二,框架本身也是要更新维护的,由于硬件技术在不断发展创新,软件功能也越发强大与复杂,一个软件性能的提升也依赖于硬件特性。在软件开发的过程中,往往需要根据架构思路改造框架以优化软件功能

2022-11-11 11:36:55 1629

原创 编程的本质——由浅入深理解程序的底层实现原理(二)

通常,我们认为程序 = 数据结构 + 算法算法是对解决问题方案的准确而完整的描述,利用计算机有序地安排处理各种结构的数据实现算法的就是程序了,这很符合人类世界的认知。那么,对于计算机来说,程序是什么?其实,计算机它就是机器,一个容纳数据和操作数据的机器,所以,实质上程序 = 数据 + 指令说明一下,指令简单来说就是计算机能够自动独立完成的一个基本动作,计算机有各种指令,这是由于指令也是用数据的形式描述的。计算机是如何表示和识别数据的?

2022-10-13 18:23:08 811

原创 初识内存中的数据——由浅入深理解程序的底层实现原理(一)

引言:要想成为一名合格的开发者,掌握计算机系统工作原理是必须的,而在学这些之前应具有一门编程语言(汇编最好)的基础和一些计算机底层基础。本篇,我将从零开始一步步地探究高级语言底层逻辑和实现原理,希望对喜欢钻研的小伙伴们有所帮助。一些数据类型的存储简单实现注意,C语法在底层的具体实现并不是这样,很多较为复杂的机制细节以后逐步介绍。字符型所有字符型数据的存储大小为1个字节,例如,用C语法定义一个字符变量char c1='A';在内存中定义一个字符变量可用以下汇编语法实现c2 BYTE

2022-10-09 21:15:27 247 1

原创 DOS底层汇编实现文件与路径的简单操作

文件是软件的重要组成部分,可以说软件开发必须要用到文件操作功能,这里我实现了一些对文件的基本操作,可以作为简单框架参考;注意思考 “\” 这个字符的添加;设备配置的驱动器号isC equ 2isD equ 3;++++++++++++++++++++++++++++++++++++++++++++++++++++stack segment STACK dw 2048 dup (?)stack ends;+++++++++++++++++++++++++++++++++++++++++++

2021-01-05 17:40:44 378

原创 深入理解计算机知识(一)

这是一个简单的开始注:以下内容的阐述都是基于DOS系统Turbo C 2.0开发环境。Turbo C 2.0中生成一个可执行的C程序最少需要TC.EXE、C0S.OBJ、EMU.LIB、MATHS.LIB、GRAPHICS.LIB、CS.LIB这6个文件。DOS环境下的命令copy格式:copy [源目录文件] [目标目录] (将源目录中的文件拷贝到目标目录中)main函数名是一个指针,它指向main函数在代码段中的偏移地址,该地址和main函数的位置有关,用户所编写的程序代码开头部分

2020-12-13 19:56:49 189

原创 关于汇编如何使用vs2019成功生成64位程序的解决方案

这里写自定义目录标题关于汇编如何使用vs2019成功生成64位程序的解决方案出现的错误功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入关于汇编如何使用vs2019成功生成64位程序的解决方案最近在用vs2019配置汇编语言开发环

2020-12-07 14:16:32 2808

原创 dos下汇编语言实现简易主菜单

功能简介40×25文本方式下显示几个选项,默认标识第一项,按上下方向键可滚动选择,按回车键退出程序。程序源码用到了符号常量和宏汇编,方便修改,注意区分标识符以及一些技巧,不便多说,直接上源码了OPTION_TOP equ 11 ;顶部选项(行)OPTION_BOTTOM equ 13 ;底部选项(行);data segment;主菜单界面;mainOption1 DB 'Op...

2020-02-29 21:13:29 978

原创 王爽《汇编语言》(第3版)课程设计2上篇

主体程序的基本样式,3、4功能可以运行显示相应结果1、2功能并不是最终形式,不要运行,以免出现意外的情况程序较为复杂,篇幅较长,源码请耐心阅读仔细分析

2020-02-28 18:40:02 757 2

原创 汇编语言字符串的输入程序2000字符

简要说明可以输入满屏字符输满后截止字符输入,按backspace键正常删除字符所有情况下enter键结束源程序;最基本的字符串输入程序,需要具备下面的功能:;(1) 在输入的同时需要显示这个字符串;;(2)一般在输入回车符后,字符串输入结束;;(3)能够删除已经输入的字符。;编写一个接收字符串的输入子程序,实现上面三个基本功能。;因为在输入的过程中需要显示,子程序的参数如...

2020-02-13 20:33:56 433

原创 王爽《汇编语言》(第3版)第16章中断例程实验解决方案

遵循书上的思路,采用直接定址表保存功能子程序的入口地址,解决中断例程的安装问题。关键词:入口地址;中断例程;安装

2020-02-12 16:31:33 423

原创 汇编语言基础归纳整理(二)

指令系统总结8086CPU所提供的指令分为以下几大类。1.传送指令如mov,push,pop,xchg,in,out等都是传送指令,这些指令实现寄存器与寄存器、寄存器与内存单元、寄存器与端口之间的数据传送。2.算术指令如add,sub,mul,div,adc,sbb,inc,dec,cmp等都是算术指令,这些指令实现寄存器和内存中的数据的算术运算。3.逻辑指令如and,or,not,...

2020-01-23 17:09:08 262

原创 探讨“对称数”的判断算法

所谓对称数就是指5,88,404,3223等从左往右或从右往左读都相同的数,而89,123,2323这样的数就不是对称数了。现在要求编程判断以字符串的形式给出的对称数,但不能用字符判断的方法。看到这个问题,首先应该想到将字符串转化为整数,然后再来判断它是不是对称数。将字符串转化为整数的方法是从左到右将字符减去‘0’,保存结果,到下一个字符时再与原来的结果乘10并相加,依次重复直到字符串结束。现...

2019-10-25 22:06:55 3190

原创 汇编语言实现模块化程序设计初探(一)

在这里我不会过多地描述基础知识,重点将在编程思想和方法技巧上,希望对看到这篇博文的你有所帮助。模块化程序设计概述在实际编程中,因为现实的问题比较复杂,对现实问题进行分析时,把它转化成相互联系、不同层次的子问题,是必须的解决方法,所以程序的模块化是必不可少的。而call与ret指令对这种分析方法提供了程序上的支持。利用call和ret指令,我们可以很简捷地实现多个相互联系、功能独立的子程序来解决...

2019-09-22 19:09:08 953

原创 汇编实现彩色字符的显示

编程运行环境选择DOS方式,但现在一般用win10系统,不能进入DOS,只好安装dosbox代替。将写好的源程序保存为asm文件,打开dosbox编译链接并运行。编译链接程序需另行下载,注意与自己的电脑相对应选择32位或64位。编程目标在屏幕中间分别显示绿色、绿底红色、白底蓝色的字符串’welcome to masm!’。相关知识内存地址空间中,B8000H~BFFFFH共32KB的空间...

2019-09-16 17:38:37 2767

原创 汇编语言基础归纳整理(一)

这里所描述的汇编语言以16位的8086CPU为准值得你牢牢记住的细节mov指令不能将数据(立即数)直接送入段寄存器,不能在两个段寄存器之间直接传送数据,也不能在两个内存单元之间直接传送数据。...

2019-09-08 12:35:13 206

原创 编程进阶学习探索

初学者想学看这里,浅谈个人经历、观点以及规划我是非计算机专业的大学生,我们的课程对编程这方面只是简单地提及了下。我学编程语言的时间也就一年多,基本上是利用业余时间断断续续地自学,没有做过实际的项目,所以只能谈谈个人的浅显经验。   我们专业的课程已学过了C语言、单片机、微机原理与接口这些知识,但课程效果都不理想。当时学完C语言效果实在是不理想,后来想学编程了就去另购书籍系统......

2019-08-30 21:06:53 228

vcpkg-2022.10.19.zip

免费搬运的开源项目,方便下载,来源于GitHub。

2022-12-09

纯8086汇编语言实战游戏ActSpace项目源码

这是我在github上开源的一个实战项目,想深入理解计算机体系结构及其工作原理的初学者拿来实践再适合不过了,其基本架构包括动画、图形学、交互逻辑等都有基本的实现,是一类罕见的源码资源,需要学习汇编的千万别错过哦!

2022-12-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除