如何在像素屏幕上写入像素?

4

我需要按顺序在像素屏幕上写入像素,地址范围从8000H到807FH,但我不知道如何实现。

我尝试在地址8000H上加1H,出现了一个像素。然后我在下一个地址8010H尝试,又出现了一个像素,但距离很远…… 我需要知道如何连续写入2个像素。


2
你正在为哪个 CPU 编程?此外,8000H 后面的下一个地址是 8001H,而不是 8010H。这离原始地址相差 16 字节。 - Ant
哪种微处理器?哪种设备?屏幕是单色的吗?如果不是,它有多少种颜色? - Robin Green
屏幕是单色的......我有一个模拟处理器和像素屏幕的程序,当我查看内存文件时它显示如下: - gn66
8000 8010 8020 8030 8040 8050 8060 8070 8080 8090 80A0 80B0 - gn66
它们只是地址,不是数据吗? - Robin Green
显示剩余2条评论
1个回答

3
像素必须以某种系统化的方式排列。希望它们是水平排列的,这很好也很简单,但我曾经使用过一台像素垂直排列的计算机,然后字节按行水平排列,再次垂直排列行,这让编程变得很烦人。
无论如何,假设一个比特等于一个像素,因为它是单色的。所以你只需要修改不同的比特并找出哪个比特对应哪个像素。
要切换字节的最低有效位(LSB),你需要将该字节与1进行异或操作。要设置它,你需要将其与1进行或操作。要切换字节的最高有效位(MSB),你需要将该字节与128进行异或操作。如果你不知道什么是MSB和LSB,你需要阅读有关它们和位操作的内容。

同时,我开始尝试一些东西,现在程序按顺序显示一个像素,一个接一个的生命。但是现在我不知道如何更改列。 - gn66
像素屏幕: MOV R9,8000H - gn66

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接