编辑“︁
Intel 8080
”︁(章节)
跳转到导航
跳转到搜索
Template:Editnotice load/content
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
=== 示例代码 === 以下是8080/8085汇编器源代码,用于一个名为memcpy的子程序,该子程序将给定大小的数据块从一个位置复制到另一个位置。数据块一次复制一个字节,数据移动和循环逻辑使用16位操作。 {| |<pre> 1000 1000 1000 78 1001 B1 1002 C8 1003 1A 1004 77 1005 13 1006 23 1007 0B 1008 78 1009 B1 100A C2 03 10 100D C9 </pre> |<syntaxhighlight lang="nasm"> ; memcpy -- ; 将内存块从一个位置复制到另一个位置。 ; ; 输入寄存器 ; BC - 要复制的字节数 ; DE - 源数据块的地址 ; HL - 目标数据块的地址 ; ; 返回寄存器 ; BC - 零 org 1000h ;起始地址为1000h memcpy public mov a,b ;将寄存器B的值复制到寄存器A ora c ;寄存器A与寄存器C进行按位或操作,结果存入寄存器A rz ;如果零标志被置位,则返回 loop: ldax d ;从DE指向的地址加载数据到A mov m,a ;将寄存器A的内容存储到HL指向的地址 inx d ;增加 DE inx h ;增加 HL dcx b ;BC减一(不影响标志位) mov a,b ;将B复制到A(以便将BC与零比较) ora c ;A = A | C (B和C都是零吗?) jnz loop ;如果零标志未被置位,则跳转到'loop:' ret ;返回 </syntaxhighlight> |} [[File:Intel_8080_Microprocessor.png|thumb|547x547px|8080 针脚定义]]
摘要:
请注意,所有对Local Chinese Wikipedia的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
Project:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
导航菜单
个人工具
未登录
讨论
贡献
创建账号
登录
命名空间
页面
讨论
大陆简体
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
查看
阅读
编辑
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息