美文网首页
2023-05-30SHARP PC-1500机器语言的输入和执

2023-05-30SHARP PC-1500机器语言的输入和执

作者: hydro | 来源:发表于2023-05-29 20:05 被阅读0次

SHARP PC-1500A如果不插内存卡,仅靠内置的内存也能正常使用。

输入NEW0 指令会清空内存。这时,它的内存地图如下

40C5 :0xFF BASIC程序结束标志

如果在PRO状态下,编写一小段BASIC程序,会占用一小段内存。

10 PRINT A

20 END

这时,它的内存地图如下:

40C5 :0x00   语句行号10(高字节)

40C6 :0x0A   语句行号10(低字节)

40C7 :0x04  语句字节长度

40C8 :0xF0  PRINT(高字节)

40C9 :0x97 PRINT(低字节)

40CA :0x41   A (PRINT 语句的参数)

40CB :0x0D 语句10结束标志

......

40D2 :0xFF   BASIC程序结束标志

====================

BASIC语言中将十进制数转换为十六进制数的代码示例:

todo 有待修改。 下列程序不能运行,由CHATGTP @Claude生成,

伪代码 转换步骤:

十进制数字除以16。取余数,取商。

余数加入 “十六进制数字 字符串

整数商 进入下一次迭代。

重复这些步骤, 获取其余的十六进制数字 。直到商等于0。

10 REM 将十进制数转换为十六进制数

20 INPUT "请输入一个十进制数:",D :  REM 提示用户输入十进制数

30 REM 计算十六进制数的位数和各位上的数值   , 逐位计算十六进制数 

50 N=0:H$=""

70 N=N+1

80 K= INT(D/16^N)

90 D=D-K*16^N

100 IF K>9 THEN H$=CHR$(K+55)+H$ ELSE H$=STR$(K)+H$

110 IF D=0 THEN 140

120 IF N<=4 THEN GOTO 70

130 PRINT "超出范围,无效输入。":GOTO 20

140 PRINT "对应的十六进制数是:";H$

150 END

===========================

PC-1500 命令

 NEW

 STATUS

 PEEK            

 POKE

 CSAVE M     

 CLOAD M

 CALL

---------------------------------------  

MEM显示内存

STATUS0 显示剩余的程序步  --0 空洞,未使用

STATUS1 显示已用程序步数   --1 占用,使用

PC-1500主机裸机,最大1850

4K   RAM模块   5K 

8K   RAM模块 10K

16K RAM模块 22K(大约)

PEEK address    --读ME0内存数据

PEEK #address  --读ME1内存数据

POKE address,VALUE1,VALUE2,.......     --写ME0内存数据

    例子: POKE &4700,&01,&02,&03   --向ME0内存,地址 0x4700  写入数据  

POKE #address,VALUE1,VALUE2,.......    --写ME1内存数据,注意ME1 区域包含IO口控制器,防止误操作

CSAVE M  "file name" ,address_start,address_end , address_autorun , --M  是Machine language. --address_autorun 是下次装载到内存时自动运行的地址。

CSAVE M-1    --Tape control will be set to the REMOTE-1 side.

CLOAD M  "file name" ,expression , --M  是Machine language  --expression 优先于CSAVE  的 address_autorun

CLOAD M-1    --Tape control will be set to the REMOTE-1 side.

==========================

运行机器语言方法

1, 在PC上完成机器码语言编程 (汇编语言??)

2,用POKE命令(非语句)写SHARP PC-1500主机

3,直接使用CALL命令,或在BASIC 程序里使用CALL命令 执行上述编程

==========================

导出内存数据的方法

可以用CSAVE 将数据移动到磁带,再用Pocket Tools 工具 解析数据。 

可以用汇编语言MOV,将数据移动到用户内存区域,再用BASIC PAUSEPRINT LPRINT命令打印出来

可以将PEEK嵌入BASIC编程 ,虽然PEEK是命令,也可以用于编程。例如,

    例如, 

100   "A": POKE 30873, PEEK 16375,PEEK 16376 

    例如,  From    PC2AssemblyLanguage.pdf  page 24

10 DATA &??, &??, &??, &??, &??, &??,

20 M=&40C0

100  FOR I=1 TO 30

110 READ A

120 POKE M+I ,A

130 NEXT I

例如,原创的

10 A=&4000

20 A=A+1

30 PAUSE PEEK A

40 GOTO 20

例如,

10 A=&4000

20 A=A+8 

30 PAUSE "ADDR=";  A;  PEEK A ;PEEK (A+1); PEEK (A+2); PEEK (A+3); PEEK (A+4); PEEK (A+5); PEEK (A+6); PEEK (A+7) --必须带括号

40 GOTO 20

===============================

BASIC 语句

DATA  后跟 多个数据项表构成,由逗号隔开,

可以先写READ语句,后写DATA语句,但是最好不要这样。

DATA 语句除了用行号标记之外,还可加上“字符”标记,便于 RESTORE 语句重置指针

10   DATA  "MOBY DICK" , 20000, "WHITE" , "M" , 112

READ 语句使数据项从 DATA读出, 并赋给变量

120 READ N$, WT, C$ , SX$, L

 RESTORE 语句重置DATA指针,可以将指针移动到第一个 DATA 数据项,或从中间某个语句DATA数据项 

REM 编译器 见到 REM关键字时,就忽略 这一行中剩下的任何字符.

PRINT   USING 

 &  规定一个数字显示域,实行左对齐.

 # 规定一个数字显示域,实行右对齐.

PRINT USING “&&&&&&”; X

这台计算机处理10个有效数字,当用超过10 位数时,PRINT、LPRINT 语句显示的末位不正确

GPRINT &F, 54, &3E            --todo 不能正确执行??

GPRINT “&F 54 &3E”           --todo 不能正确执行??  

STOP 语句能使计算机中止程序的执行,

CONT 命令 可以 接着运行

修改BASIC 命令 的时候,  注意: 需要重新写一遍,不能仅仅改动或添加或删除个别字母

INPUT#   从磁带到内存   Data transmission command .  

PRINT#  从内存到磁带

===========================

十六进制数的前 带有&号.

相关文章

  • 计算机语言

    目前有三种通用类型,机器语言,汇编语言,高级语言。 机器语言: 第一代机器语言是直接输入给计算机使用的,不经过任何...

  • 汇编的介绍和认识

    汇编是从机器语言演变过来的,想要认识汇编就要了解机器语言。那机器语言是什么呢?机器语言就是0和1。 1.机器语言 ...

  • 你可以选择加深记忆、学习,一篇python入门总结!

    自然语言用双引号,机器语言用单引号 例如 dict 的 key 单行注释 # 多行注释 ''' ''' 输入 pr...

  • 8086汇编 - 简介

    编程语言的发展 机器语言由0和1组成 汇编语言(Assembly Language)用符号代替了0和1,比机器语言...

  • 8086汇编

    编程语言的发展 机器语言由0和1组成 汇编语言(Assembly Language)用符号代替了0和1,比机器语言...

  • 机器语言

  • 计算机语言发展的三个阶段

    一. 机器语言 第一代计算机语言称为机器语言。机器语言就是 0/1 代码。计算机只能识别 0 和 1。在计算机内部...

  • 编译型语言和解释型语言(一)

    首先,我们编程都是用的高级语言(写汇编和机器语言的大牛们除外),计算机不能直接理解高级语言,只能理解和运行机器语言...

  • 机器语言的介绍

    大家好,今天我们来说说机器语言。别担心 本人仍然是喵 不是冒牌货。可能有人说这跨度怎么怎么这么大,从iOS一下就到...

  • 人类和机器进行对话的语言进化过程

    一. 机器语言 第一代计算机语言称为机器语言。数字机器的语言是 0和1 构成的。计算机只能识别 0 和 1。在计算...

网友评论

      本文标题:2023-05-30SHARP PC-1500机器语言的输入和执

      本文链接:https://www.haomeiwen.com/subject/dzsjedtx.html