![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
开源项目
文章平均质量分 89
IT 哈
这个作者很懒,什么都没留下…
展开
-
Writing a simple 16 bit VM in less than 125 lines of C
用c语言写16位虚拟机转载 2022-11-14 09:28:48 · 153 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(9)- 总结
恭喜你完成了自己的 C 语言编译器,本章中我们发一发牢骚,说一说编写编译器值得注意的一些问题;编写编译器时遇到的一些难题。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降 手把手教你构建 C 语言编译器(5)——变量定义 手把手教你构建 C 语言转载 2021-06-02 22:47:43 · 199 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(8)- 表达式
这是整个编译器的最后一部分,解析表达式。什么是表达式?表达式是将各种语言要素的一个组合,用来求值。例如:函数调用、变量赋值、运算符运算等等。表达式的解析难点有二:一是运算符的优先级问题,二是如何将表达式编译成目标代码。我们就来逐一说明。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你转载 2021-06-02 22:46:36 · 510 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(7)- 语句
整个编译器还剩下最后两个部分:语句和表达式的解析。它们的内容比较多,主要涉及如何将语句和表达式编译成汇编代码。这章讲解语句的解析,相对于表达式来说它还是较为容易的。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降 手把手教你构建 C 语言编译器(5转载 2021-06-02 22:45:21 · 138 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(6)- 函数定义
由于语法分析本身比较复杂,所以我们将它拆分成 3 个部分进行讲解,分别是:变量定义、函数定义、表达式。本章讲解函数定义相关的内容。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降 手把手教你构建 C 语言编译器(5)——变量定义 手把手教你构建转载 2021-06-02 22:44:00 · 263 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(5)- 变量定义
本章中我们用 EBNF 来大致描述我们实现的 C 语言的文法,并实现其中解析变量定义部分。由于语法分析本身比较复杂,所以我们将它拆分成 3 个部分进行讲解,分别是:变量定义、函数定义、表达式。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降 手转载 2021-06-02 22:40:30 · 404 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(4)- 递归下降
本章我们将讲解递归下降的方法,并用它完成一个基本的四则运算的语法分析器。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降 手把手教你构建 C 语言编译器(5)——变量定义 手把手教你构建 C 语言编译器(6)——函数定义 手把手教你构建 C 语转载 2021-06-02 22:39:14 · 851 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(3)- 词法分析器
本章我们要讲解如何构建词法分析器。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降 手把手教你构建 C 语言编译器(5)——变量定义 手把手教你构建 C 语言编译器(6)——函数定义 手把手教你构建 C 语言编译器(7)——语句 手把手教你构转载 2021-06-02 22:37:49 · 1591 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(2)- 虚拟机
这是“手把手教你构建 C 语言编译器”系列的第三篇,本章我们要构建一台虚拟的电脑,设计我们自己的指令集,运行我们的指令集,说得通俗一点就是自己实现一套汇编语言。它们将作为我们的编译器最终输出的目标代码。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降转载 2021-06-02 22:36:31 · 425 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(1)- 设计
这是“手把手教你构建 C 语言编译器”系列的第二篇,我们要从整体上讲解如何设计我们的 C 语言编译器。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——递归下降 手把手教你构建 C 语言编译器(5)——变量定义 手把手教你构建 C 语言编译器(6)——函数转载 2021-06-02 22:35:13 · 1347 阅读 · 0 评论 -
手把手教你构建 C 语言编译器(0)- 前言
“手把手教你构建 C 语言编译器” 这一系列教程将带你从头编写一个 C 语言的编译器。希望通过这个系列,我们能对编译器的构建有一定的了解,同时,我们也将构建出一个能用的 C 语言编译器,尽管有许多语法并不支持。手把手教你构建 C 语言编译器系列共有10个部分:手把手教你构建 C 语言编译器(0)——前言 手把手教你构建 C 语言编译器(1)——设计 手把手教你构建 C 语言编译器(2)——虚拟机 手把手教你构建 C 语言编译器(3)——词法分析器 手把手教你构建 C 语言编译器(4)——转载 2021-06-02 22:33:32 · 427 阅读 · 0 评论 -
本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文
本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文如果你有好的推荐你可以提 issue 或者 pr 来告诉作者推荐库 前端常用 Css && 动画 Vue 实践库 文档 工具库 Node 工具库 命令行 文件处理 调试 GraphQL 工具 Webpack 移动端 性能优化 请求处理 工程 Mac 录制 Ch转载 2021-04-30 14:23:46 · 200 阅读 · 0 评论 -
教你撸一个网页聊天室
最近在学校比较闲,终于有这么一块时间可以自由支配了,所以内心还是十分的酸爽舒畅的。当然了,罪恶的事情也是有的,比如已经连续一周没有吃早饭了,其实现在回头想想,真的不能怪我啊,因为最近的天气实在是太!冷!了!好吧为了减少赖床的罪恶感,还是学(gǎo)点(diǎn)东(shì)西(qing)好了。不说废话了,还是进入正题。进入正题这个丑陋无比的聊天室,暂时给他后面加个“v1.0”吧,毕竟也是没...转载 2020-01-19 16:19:17 · 6458 阅读 · 0 评论 -
零基础实现node+express个性化聊天室
本篇文章使用node+express+jquery写一个个性化聊天室,一起来get一下~(源码地址见文章末尾)效果图项目结构实现功能登录检测 系统自动提示用户状态(进入/离开) 显示在线用户 支持发送和接收消息 自定义字体颜色 支持发送表情 支持发送图片下面将一一讲解如何实现前期准备node及npm环境、express、socket.io具体实现1、将聊天室部署到服务器先用node搭建一个服务器,部署在localhost:3000端口,先尝试向浏览器转载 2020-11-02 21:28:58 · 411 阅读 · 0 评论 -
js+node.js+socket.io实现聊天功能(私聊,创建群聊)
效果图:这里启动了四个客户端进行测试1. 登录,以及获取在线用户列表2. 私聊功能3. 群聊功能偶然发现了WebSocket, 发现这个可以实时通信,在线聊天,所以就做了一个聊天工具的demo,记录一下源码Socket.ioWebSocket是js原生自带的,而Socket.io相当于是对WebSocket进行封装的一个框架官...转载 2020-04-08 13:47:36 · 4042 阅读 · 0 评论 -
基于express/socket.io的简易聊天室
经过三个月的努力奋斗,FreeNGUI框架现在已经进入维护阶段,也终于有点时间搞搞其他东西,左思右想,最终决定搞一个简单的聊天室。虽然网上教程众多,但还是想自己完整的跑一遍,过过手瘾。主要涉及到以下内容:Express Node.js pug Socket.IO IndexedDBNode.js 是一个基于Chrome V8 引擎的JavaScript 运行环境。官...转载 2020-04-08 12:20:40 · 254 阅读 · 0 评论 -
零基础实现node+express个性化聊天室
零基础实现node+express个性化聊天室本篇文章使用node+express+jquery写一个个性化聊天室,一起来get一下~(源码地址见文章末尾)效果图项目结构实现功能登录检测 系统自动提示用户状态(进入/离开) 显示在线用户 支持发送和接收消息 自定义字体颜色 支持发送表情、图片、窗口抖动下面将一一讲...转载 2020-04-08 11:30:09 · 176 阅读 · 0 评论 -
JavaScript/jQuery WebIM 及时聊天通信工具 本地客户端
WebIM本地客户端,可以发送表情、调整字体、字体大小、字体颜色、加粗、下划线、斜体等;还支持收缩split条,详情等;上UI界面,界面还不够专业,需要美工支持,下一期在做优化!收缩详情chat.html 代码<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><htm...转载 2020-02-13 19:13:38 · 363 阅读 · 0 评论 -
仿微信 即时聊天工具 - SignalR (一)
话不多说,先上图背景:微信聊天,经常会遇见视频发不了,嗯,还有聊天不方便的问题,于是我就自己买了服务器,部署了一套可以直接在微信打开的网页进行聊天,这样只需要发送个url给朋友,就能聊天了!由于自己无聊弄着玩的,代码比较粗糙,各位多指正!1、首先安装SignalR,这步我就不做过多说明了安装好以后在根目录新建一个Hubs文件夹,做用户的注...转载 2020-02-13 14:20:00 · 3780 阅读 · 0 评论 -
腾讯最热门30款开源项目
开源是个好东西,马化腾除了王者荣耀还是干了些好事情的。腾讯最近开源的一些比较热门的项目,可以学习了解下哈0、Android 热修复框架 Tinker ★Star 8967Tinker是Android的热修复解决方案库,它支持dex,库和资源更新,无需重新安装apk。有一些问题,Tinker不能动态更新:无法更新AndroidManifest.xml,例如添加Android组件。;不...转载 2019-11-07 08:54:13 · 649 阅读 · 0 评论