CHIP8 Emulator(1)——CHIP8简介

CHIP8是一种1970年代的编程语言,用于简化电子游戏编程。它在CHIP8虚拟机中运行,包括4K内存、16个数据寄存器、栈、定时器和简单的输入输出。CHIP8有35个操作码,模拟器的关键在于实现这些操作码。常见游戏如小蜜蜂、俄罗斯方块和吃豆人可用CHIP8编写。SCHIP8作为其增强版,增加了更多功能。
摘要由CSDN通过智能技术生成

CHIP8简介

对CHIP8一个简单的介绍,参考资料来自于CHIP8的Wiki。

CHIP8是什么?

我开始一直以为CHIP8是什么单片机的一种,后来才发现CHIP8是一种解释性的编程语言。对,是语言!最初被应用是在1970年代中期。CHIP8的程序运行在CHIP8虚拟机中,它的出现让电子游戏编程变得简单些了(相对于那个年代来说)。

用CHIP8实现的电子游戏不少,比如小蜜蜂,俄罗斯方块,吃豆人等。CHIP8还有个后代叫做SCHIP8(Super Chip8),它的出现让游戏编程相对于CHIP8来说更加简单了,因为它多了很多的操作码。它们两个在很多平台上都实现了相应的模拟器,也有纯硬件实现,比如用FPGA。

CHIP8虚拟机介绍

上文提到了运行CHIP8的程序是在CHIP8的虚拟机中,那么作为一个能运行CHIP8的虚拟机,具备了哪些要素呢?

内存

CHIP8基本是在一个有4K内存的系统上实现,也就是4096个字节。前512字节由CHIP8的解释器占据。所以CHIP8的程序都是从0x200地址开始的。最顶上的256个字(0xF00-0xFFF) 用于显示刷新,在这下面的96个字节 (0xEA0-0xEFF) 用于栈, 内部使用或者其他变量。

发展到今天,CHIP8的实现的话不需要使用的空间都可以不使用,也就是不用完全那么按照上面来。但是通常还是要在低512字节 (0x000-0x200)存放字体数据。

寄存器

CHIP8的话有16个数据寄存器,V0~VF。VF寄存器存放进位标识。还有一个地址寄存器叫做I,2个字节的长度。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值