JBTALKS.CC

标题: 汇编【Assembly language】讨论与请教 [打印本页]

作者: HenryJay    时间: 2011-1-21 11:26 PM
标题: 汇编【Assembly language】讨论与请教
在这里有谁是学
low level language 的同志?
或者是说汇编

本人目前大学二年级,开始接触微处理器课程
从之前的c language到现在的汇编(8085A microprocessor)
几乎不太一样的感觉,以前的c也没学的怎样......=.=|||

在这里也想和大家交流交流,大家可以在这讨论,我有问题也可以问大家
作者: HenryJay    时间: 2011-1-21 11:29 PM
本帖最后由 HenryJay 于 2011-1-21 11:37 PM 编辑

什么是汇编

汇编语言(Assembly language,),是一种与硬件紧密相关的程序设计低阶语言。汇编语言是机器语言便于记忆和理解的符号形式(又称为助忆码)。

汇编语言(Assembly Language)是面向机器的程序设计语言。

在汇编语合中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址妈。这样用符号代替机器语盲的二进制码,就把机器语音变成了汇编语言。于是汇编语言亦称为符号语言。

使用汇编语言编写的程序,机器个能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编语言把汇编程序翻译成机器语言的过程称为f汇编。

汇编语言比机器语言易于读写、易于调试和修改,同时也具有机器语言执行速度快,占内存空间少等优点,但在编写复杂程序时具有明显的局限性,汇编语言依赖于具体的机型,不能通用,也不能在不同机型之间移植。

对于不同型号的计算机,有着不同的结构的汇编语言

汇编语言由于采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器指令代码,而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。

汇编语言是面向具体机型的,它离不开具体计算机的指令系统,因此,对于不同型号的计算机,有着不同的结构的汇编语言,而且,对于同一问题所编制的汇编语言程序在不同种类的计算机间是互不相通的。

汇编语言中由于使用了助记符号,用汇编语言编制的程序输入计算机,计算机不能象用机器语言编写的程序一样直接识别和执行,必须通过预先放入计算机的"汇编程序"的加工和翻译,才能变成能够被计算机识别和处理的二进制代码程序。用汇编语言等非机器语言书写好的符号程序称为源程序,运行时汇编程序要将源程序翻译成目标程序。目标程序是机器语言程序,它一经被安置在内存的预定位置上,就能被计算机的CPU处理和执行。

汇编语言像机器指令一样,是硬件操作的控制信息,因而仍然是面向机器的语言,使用起来还是比较繁琐费时,通用性也差。但是,汇编语言用来编制系统软件和过程控制软件,其目标程序占用内存空间少,运行速度快,有着高级语言不可替代的用途。
作者: HenryJay    时间: 2011-1-21 11:35 PM
在这里问一个题目

看大家会不会

如何在ram 2202H的2byte内容作为参考,比如10就是加接下来2023H以后十个地址的内容,并把答案储存在2200H和2101Haddress

注意:2101是LSB
作者: 宅男-兜着走    时间: 2011-1-21 11:38 PM
Assembly, 我想这是我这一生中都不太可能学会的东西。

我踏入篇程的时候已经是 OOP的语言 Java 了。
至少蛮多函数, 对象是我们人类看得懂的
作者: HenryJay    时间: 2011-1-21 11:42 PM
回复 4# 宅男-兜着走

可以看的懂啊
只是兼容性很差

我也找了这个网站关于汇编的帖子

似乎没有一个是8084microprocessor的assembly language

=.=||
囧,那么似乎找不到人请教了
作者: 宅男-兜着走    时间: 2011-1-21 11:58 PM
回复 5# HenryJay


    您大可放心,这里的高手多个是。
    抱歉, 对Assembly Language 没兴趣, 只是单纯的进来跟你打个招呼。
   
作者: HenryJay    时间: 2011-1-22 04:37 PM
回复 3# HenryJay
  1. LDA 2102H
  2. LXI D,2103H
  3. MOV B,A
  4. DCR B
  5. JZ ZERO1
  6. LDAX D
  7. MOV H,A
  8. ZERO2:
  9. INX D
  10. LDAX D
  11. ADD H
  12. JNC CARRY
  13. INR L
  14. CARRY:
  15. MOV H,A
  16. DCR B
  17. JNZ ZERO2
  18. ZERO1:
  19. STA 2100H
  20. MOV A,L
  21. STA 2101H
  22. HLT
复制代码
我的答案,经过测试应该没有问题
作者: cloudsky990    时间: 2011-2-14 12:58 PM
我现在在上着。。。。。请各位大大教导我哦·~
作者: TSHsoft    时间: 2011-2-16 10:39 PM
回复  HenryJay 我的答案,经过测试应该没有问题
HenryJay 发表于 2011-1-22 04:37 PM


读书的时候我的Assembly还可以,可是现在全部忘光光了~
作者: HenryJay    时间: 2011-2-17 12:03 AM
回复 9# TSHsoft


    但是一些技巧,小撇步,如何思考
应该还有吧!
如此,我也可以问你




欢迎光临 JBTALKS.CC (https://jbtalks.my/) Powered by Discuz! X2.5