百度
360搜索
搜狗搜索

汇编程序设计教程,ARM9嵌入式系统设计基础教程的第9章 ARM汇编语言程序设计基础详细介绍

本文目录一览: 简述用汇编语言进行程序设计的步骤。

汇编语言程序设计步骤:
(1)分析问题:已知条件、要解决的问题、功能/性能要求等。
(2)建立数学模型:把问题数学化、公式化,便于计算机处理。
(3)确定算法:简单、速度快、精度高、代码量小、编程容易。
(4)绘制程序流程图:用箭头、框图、菱形图等表示程序结构。
(5)内存空间分配:为程序或数据分配内存空间。
(6)编制程序与静态检查:程序结构层次简单、清楚、易懂。
(7)程序调试:利用调试软件DEBUG进行调试。
汇编语言程序设计步骤:
1、
分析问题,抽象出描述问题的数据模型
2、
确定问题的算法思想
3、
画出流程图或结构图
4、
分配存储器和工作单元(寄存器)
5、
逐条编写程序
6、
静态检查,上机调试

汇编语言程序设计的四个主要步骤(主要步骤)

1.拟定任务书 2.建立数学模型 3.建立算法 4.绘制程序流程图 5.编制汇编语言源程序 6.上机调试(诚心为您解答,给个好评吧,谢谢)
1、画框图
2、编制代码
3、调试编译
4、运行测试。
1.拟定任务书 2.建立数学模型 3.建立算法 4.绘制程序流程图 5.编制汇编语言源程序 6.上机调试(诚心为您解答,给个好评吧,谢谢)

汇编语言程序设计

一、
MOV DI,0000H ;让ds:di指向字符串
MOV CX,n ;设置循环次数
MOV AL,'A' ;设置扫描的字母
CLD ;设置df为0
REPNE SCASB ;开始扫描
JZ FOUND ;找到则跳转
MOV DI,00H ;没找到则让di指向字符串开头
FOUND: MOV BX,DI ;让bx记录A所在位置
HLT ;处理器暂停
二、
TEST AX, 0001H ;判断最后一位是否为一
JZ EVEN ;为一,是奇数,跳转
ADD AX,1 ;是偶数,加一
EVEN: SHR AX,1 ;右移一位,相当于除2
三、
MOV CX,100 ;设置循环次数
MOV SI,00FFH ;di指向字符串的前一个字节
L1:INC SI
CMP BYTE PTR[SI],’$’
LOOPNE L1 ;di指向下一个字节,如果它不是$而且循环次数未到,则转到L1继续循环;
SUB SI,0100H
MOV CX,SI
MOV SI,0100H ;指向第一个字符
MOV AL,[SI] ;把第一个字符送入al
DEC CX ;指向前一个字符
L2: INC SI ;指向下一个字符
ADD AL,[SI] ;把字符加到al
LOOP L2 ;如果次数没到则转L2继续
HLT ;处理器暂停
data segment
n db 5
result dw ?
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax
mov cl,n
mov ch,0
mov al,1
next:
mul cl
loop next
mov result,ax
mov ax,4c00h
int 21h
code ends
end start
1. 串操作指令、处理器控制指令-位控制指令
在某一字符串中搜寻是否有字符A,若有,则把搜索次数记录下来,送到BX中;若无,则将BX清0。设字符串起始地址偏移量为00H,字符串长度为n。
MOV DI,0000H //字符串初始地址放入寄存器DI中
MOV CX,n //字符串长度放入CX中
MOV AL,'A' //要查找的字母A放入AL中
CLD//清除方向标志位
REPNE SCASB//以上都是指令REPNE SCASB的指令要求。。。可以参考该指令用法,作用是不相等则重复比较
JZ FOUND //有条件跳转转移 CX为零则执行标号FOUND处的指令
MOV DI,00H//赋值DI为00H
FOUND: MOV BX,DI//DI值赋给BX
HLT//停止 关键是REPNE SCASB指令
2.条件转移指令
AX中存放的无符号数,若为偶数,则直接除以2;若为奇数,则加1再除以2。
TEST AX, 0001H //AX中的数与0001H做逻辑与运算 但不影响AX的值
JZ EVEN //如果结果为0则AX中为偶数跳转到EVEN
ADD AX,1 //AX中的数加1
EVEN: SHR AX,1 //AX中的数右移一位 相当于除以2
3. 循环指令
若在存储器的数据段中有100个字节构成的数组,要求从该数组中找出“$”字符,然后将“$”字符前面的所有元素相加,结果保留在AL寄存器中。
MOV CX,100 //将100赋值给计数寄存器CX
MOV SI,00FFH //初始地址00FFH赋值给SI
L1:INC SI //将SI中的值加1
CMP BYTE PTR[SI],’$’ //当前地址的一字节数据与$做比较
LOOPNE L1 //不相等继续执行L1
SUB SI,0100H //SI中的数据减去100
MOV CX,SI //SI 赋值给CX
MOV SI,0100H
MOV AL,[SI] //以SI中的数据做地址寻址找到数据赋值给AL
DEC CX //CX 减去1
L2: INC SI //将SI中的数加1
ADD AL,[SI] 用SI相对寻址得到的数据与AL中的数据相加
LOOP L2 循环执行L2一直到CX为0
HLT

最后这个我不是很明白
我认为该这样写
MOV CX,100
MOV SI,00FFH
L1:INC SI
CMP BYTE PTR[SI],’$’
LOOPNE L1
SUB SI,00FFH //更改了这。。。00FF应该是起始地址 为什么原程序减去的是100呢。。不理解
MOV CX,SI //当前SI值应该是$所在的地址 减去00FFH就成了$之前的字节数 然后赋值给CX
MOV SI,00FFH
MOV AL,[SI]
DEC CX
L2: INC SI
ADD AL,[SI]
LOOP L2
HLT

阅读更多 >>>  计算机程序设计c语言,计算机程序设计C语言 北华大学智慧树

汇编语言程序设计

一.
1. ADD BX,AX 或 ADD BL,AL ;类型配对
2. MOV AX,0A999H
3. MOV AX,0F8H
4. MOV AX,1234H 或 MOV AL,12H
5. MOV AX,[BX]
6. MOV DS,AX ;DS不能直接存立即数
7. ADD [BX],10 ;对的诶
8. PUSH AX ;push不能直接push立即数
9. IN AL,DX
10. OUT 40H ,AL
11. MUL AL ;mul不能直接跟立即数
12. MOV [DI],AX ;mov不能两个都是内存
13. ADD DI,AX
14. MOV DS,AX ;CS不可以改
15. SUB 10[SI],AX ;si di 不可以同时出现
二.
SUB [BP], BX 寄存器间接寻址方式;30400H;
MOV [BX+DI], SI 基址变址寻址方式;10400H;
ADD ES:[SI], DI 寄存器相对寻址方式;20200H;
MOV 10[BX], DI 寄存器相对寻址方式;10100H;
MOV DS:[100H], BX 相对基址变址寻址方式;10100H
三.
3456H;5678H;1234H;5678H;
四.
1234H;2468H;0008H;1008H;0804H;0408H;0508H;0508H
五.
01H,31H,0FFH,00H,78H,56H,FFH,FFH,00H,24H,00H,0BH,00H,0BH,19H,09H,09H
(从左往右地址变大)
AX=3101H,BX=0023H
六.
汇编语言是一种符号语言,他和机器语言几乎一一对应,但在书写中却是用有字符串组成的助记符
。。。。。。。
(希望对你有帮助)
自学汇编的路过~ 楼主,太不厚道了吧,这种东西要自己做的吧。 第一题:我看了前面几个,是两个操作数的位数对不上,不能这样用的··· 其他的 懒得看了,自己慢慢做吧,给五百分也懒得帮你做了,哪有这样的啊! 楼主好懒。
八位和十六位寄存器不能同时运算
一.
1.ADD BX,AX 或 ADD BL,AL ;类型配对
2.MOV AX,0A999H
3.MOV AX,0F8H
4.MOV AX,1234H 或 MOV AL,12H
5.MOV AX,[BX]
6.MOV DS,AX ;DS不能直接存立即数
7.ADD [BX],10 ;对
8.PUSH AX ;push不能直接push立即数
9.IN AL,DX
10.OUT 40H ,AL
11.MUL AL ;mul不能直接跟立即数
12.MOV [DI],AX ;mov不能两个都是内存
13.ADD DI,AX
14.MOV DS,AX ;CS不可以改
15.SUB 10[SI],AX ;si di 不可以同时出现
二.
SUB [BP], BX 寄存器间接寻址方式;30400H;
MOV [BX+DI], SI 基址变址寻址方式;10400H;
ADD ES:[SI], DI 寄存器相对寻址方式;20200H;
MOV 10[BX], DI 寄存器相对寻址方式;10100H;
MOV DS:[100H], BX 相对基址变址寻址方式;10100H
三.
3456H;5678H;1234H;5678H;
四.
1234H;2468H;0008H;1008H;0804H;0408H;0508H;0508H
五.
01H,31H,0FFH,00H,78H,56H,FFH,FFH,00H,24H,00H,0BH,00H,0BH,19H,09H,09H
(从左往右地址变大)
AX=3101H,BX=0023H
六.
1.
汇编语言:(AssemblyLanguage)是面向机器的程序设计语言。
汇编:把汇编语言翻译成机器语言的过程称为汇编。
汇编程序:把汇编语言书写的程序翻译成与之等价的机器语言程序的翻译程序。汇编程序输入的是用汇编语言书写的源程序,输出的是用机器语言表示的目标程序。汇编语言是为特定计算机或计算机系列设计的一种面向机器的语言,由汇编执行指令和汇编伪指令组成。采用汇编语言编写程序虽不如高级程序设计语言简便、直观,但是汇编出的目标程序占用内存较少、运行效率较高,且能直接引用计算机的各种设备资源。它通常用于编写系统的核心部分程序,或编写需要耗费大量运行时间和实时性要求较高的程序段。
2.
3.
单独cmpsb就是逐一比较8个位;加上rep,循环比较,还是比较这8位啊
4.
是指在计算机执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的时间处理程序。待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。
5.
宏和子程序都是为了简化源程序的编写,提高程序的可维护性,但是它们二者之间存在着以下本质的区别:
1、在源程序中,通过书写宏名来引用宏,而子程序是通过CALL指令来调用;
2、汇编程序对宏通过宏扩展来加入其定义体,宏引用多少次,就相应扩展多少次,所以,引用宏不会缩短目标程序;而子程序代码在目标程序中只出现一次,调用子程序是执行同一程序段,因此,目标程序也得到相应的简化;
3、宏引用时,参数是通过“实参”替换“形参”的方式来实现传递的,参数形式灵活多样,而子程序调用时,参数是通过寄存器、堆栈或约定存储单元进行传递的;
4、宏引用语句扩展后,目标程序中就不再有宏引用语句,运行时,不会有额外的时间开销,而子程序的调用在目标程序中仍存在,子程序的调用和返回均需要时间。
总之,当程序片段不长,速度是关键因素时,可采用宏来简化源程序,但当程序片段较长,存储空间是关键因素时,可采用子程序的方法来简化源程序和目标程序。
七.
…………

汇编语言程序设计方法_汇编语言程序设计教程

编码不容易,望能帮到楼主。楼主好好看
CRLFMACRO;宏定义,实现回车换行
MOVAH,2
MOVDL,0DH
INT21H
MOVAH,2
MOVDL,0AH
INT21H
ENDM
DSEGMENT
SCOREDB76,69,84,90,73,88,89,63,100,80;数组接收分数
SDB5DUP(?);预留5个位置存储每个分数段的人数
WORDSDB"THENUMBERBETWEEN60~69IS:$"
WORDS1DB"THENUMBERBETWEEN70~79IS:$"
WORDS2DB"THENUMBERBETWEEN80~89IS:$"
WORDS3DB"THENUMBERBETWEEN90~99IS:$"
WORDS4DB"THENUMBERBETWEEN100IS:$"
DENDS
CODESEGMENT
ASSUMECS:CODE,DS:D
BG:
MOVAX,D
MOVDS,AX
CALLCOUNT;调用子程序
MOVAH,9;输出每个分数段的人数
LEADX,WORDS
INT21H
MOVAH,2
MOVDL,S
ADDDL,30H
INT21H
CRLF
MOVAH,9
LEADX,WORDS1
INT21H
MOVAH,2
MOVDL,S1
ADDDL,30H
INT21H
CRLF
MOVAH,9
LEADX,WORDS2
INT21H
MOVAH,2
MOVDL,S2
ADDDL,30H
INT21H
CRLF
MOVAH,9
LEADX,WORDS3
INT21H
MOVAH,2
MOVDL,S3
ADDDL,30H
INT21H
CRLF
MOVAH,9
LEADX,WORDS4
INT21H
MOVAH,2
MOVDL,S4
ADDDL,30H
INT21H
CRLF
MOVAH,4CH
INT21H
COUNT:;子程序入口
MOVCX,10;循环10次
MOVSI,0
LOP:
INT3
MOVAL,SCORE[SI]
CMPAL,70
JBNUMBER6;比较进入不同的标号进行计算每个分数段人数
CMPAL,80
JBNUMBER7
CMPAL,90
JBNUMBER8
CMPAL,100
JENUMBER10
JMPNUMBER9
NUMBER6:;不同标号之下的作用是计算每个分数段人数并存于预留的位置中
MOVBL,S
INCBL
MOVS,BL
JMPL
NUMBER7:
MOVBL,S1
INCBL
MOVS1,BL
JMPL
NUMBER8:
MOVBL,S2
INCBL
MOVS2,BL
JMPL
NUMBER9:
MOVBL,S3
INCBL
MOVS3,BL
JMPL
NUMBER10:
MOVBL,S4
INCBL
MOVS4,BL
JMPL
L:
INCSI
LOOPLOP
RET;子程序结束,放回主程序
CODEENDS
ENDBG

阅读更多 >>>  卡西欧手表日期怎么调节

汇编语言 秒表程序设计

主程序:
push ds ;保存数据段
mov ax,0000
mov ds,ax ;数据段清零
mov ax,offset irq7 ;取中断程序入口地址
add ax,2000 ;加装时IP=2000地址
mov si,003c ;填8259中断7中断矢量
mov w[si],ax ;填偏移量矢量
mov ax,0000 ;段地址CS=0000H
mov si,003e
mov w[si],ax ;填段地址矢量
pop ds ;弹栈
in al,21 ;读8259中断屏蔽字
and al,7f ;开8259中断7
out 21,al
mov al,b4 ;8253的计数器2为方式2,采用二进制计数,先低后高写入计数值 10110100
out 43,al ;写入方式控制字
mov ax,2e9c 0010 1110 1001 1100B 11932D
out 42,al ;写入低字节计数值 1001 1100
mov al,ah
out 42,al ;写入高字节计数值 0010 1110
mov al,81 ;8255的A口为方式0输出,B口为方式0输出,C口下部输入 1000 0001
out 63,al ;写方式控制字
call first ;调用first子程序,赋计数初值
begi:hlt 延时等待
sti ;开中断
mov ah,01
int 16 ;检测是否按了键盘
jz begi
mov ah,00 ;读键值
int 16
cmp al,0d ;是否按了回车
jnz A1
mov si,4000
not [si+04] ;偏移地址为4004的内存单元内容取反
jmp begi
A1:cmp al,1b ;是否按了ESC键
jnz A2
call first ;重新赋初值,相当于清零
A2:jmp begi
中断程序:
irq7:call disp ;调用disp子程序,用来在数码管显示数据
mov si,4000
cmp [si+04],00 ;判断是否按了第2次回车键
je A4
call addn ;调用addn子程序,用来计数
A4:mov al,20
out 20,al
cli ;关中断
iret ;返回
addn程序:
addn:mov si,4000
add [si+03],01 ;百分之一秒加1
cmp [si+03],0a ;判断是否大于10
jz A5
jmp A9
A5:mov [si+03],00
Add [si+02],01 ;十分之一秒加1
cmp [si+02],0a ;判断是否大于10
jz A6
jmp A9
A6:mov [si+02],00
add [si+01],01 ;秒位加1
cmp [si+01],0a ;判断是否大于10
jz A7
jmp A9
A7:mov [si+01],00
add [si],01 ;十秒位加1
cmp [si],06 ;判断是否大于6
jz A8
jmp A9
A8:mov [si],00 ;大于60:00重新开始
A9: ret
赋初值程序:
first:mov si,4000
mov al,00
mov [si],al
mov [si+01],al
mov [si+02],al
mov [si+03],al
mov [si+04],al
ret
显示程序:
disp:push ax ;保存AX
mov si,4000 ;指向数据缓冲区
mov dl,f7 ;1111 0111 指向数码管
mov al,dl ;al=1111 0111
again:out 60,al ;写端口A
mov al,[si]
mov bx,4100 ;指向数码缓冲区 bx=0100 0001 0000 0000
and ax,00ff ; ax=0000 0000 al
add bx,ax ;得到显示代码 bx=0100 0001 al
mov al,[bx]
out 61,al ;写端口B
call dally :调用延时程序dally
inc si
mov al,dl
test al,01
jz out
ror al,1 ;指向下一个数码管
mov dl,al
jmp again
out: pop ax ;弹出AX
ret
dally:push cx ;延时程序
push ax
mov cx,0010
t1 :mov ax,0010
t2 dec ax
jnz t2
loop t1
pop ax
pop cx
ret
数码缓冲区:
0000:4000 3f,06,5b4f,66,6d,7d,07,7f,6f
二、 设计思想
电子秒表要实现的功能:用键盘中断来控制整个程序,按一下回车键启动电子秒表,再按一下暂停,按一下ESC键清零,用七段数码管显示时间。整个程序涉及到8255、8253与8259三个芯片。8253的OUT2,CLK2分别连接8259的IRQ7与PCLK,8253的GATE2连接正5伏电压,采用计数器2每隔0.01秒产生一次中断并且计数,写入以偏移地址4000H开始的4个内存单元,然后利用8255将内存单元的数据输出到七段数码管。由于键盘中断优先于8259的7号中断,所以程序只有在按一下回车键才启动电子秒表,再按一下暂停,按一下ESC键清零,如果超出了60秒,整个程序自动重新开始。
三、 所用芯片工作原理
8255:接口电路在CPU和I/O设备之间起着信号的变换和传输的作用。 任何接口电路与CPU之间的信息传输方式都是并行的,即CPU与接口电路之间以数据字节/字为单位传送信息。接口电路与I/O设备之间的信息传送方式,有并行和串行两种,相应的接口电路称为并行接口和串行接口。
并行接口是在多根数据线上,以数据字节/字与I/O设备交换信息。在输入过程中,输入设备把数据送给接口,并且使状态线“输入准备好”有效。接口把数据存放在“输入缓冲寄存器”中,同时使“输入回答”线有效,作为对外设的响应。外设在收到这个回答信号后,就撤消数据和“输入准备好”信号。数据到达接口中后,接口会在“状态寄存器”中设置输入准备好标志,或者向CPU发一个中断请求。CPU可用查询方式或中断方式从接口中读取数据。接口中的数据被读取后,接口会自动清除状态寄存器中的标志,且撤消对CPU的中断请求。
在输出过程中,每当输出寄存器可以接收数据,接口就会将状态寄存器中“输出准备好”状态置1或向CPU发一个中断请求,CPU可用查询或中断方式向接口输出数据。当CPU输出的数据到达接口后,接口会清除“输出准备好”状态,把数据送往外设,并向外设发一个“数据输出准备好”信号。外设受到驱动后,便接收数据,并向接口电路发一个“输出回答”信号,接口收到该回答信号后,又将状态寄存器中“输出准备好”置位,以便CPU输出下一个数据。
8253:对CLK信号进行“减1计数”。首先CPU把“控制字”,写入“控制寄存器”,把“计数初始值”写入“初值寄存器”,然后, 定时/计数器按控制字要求计数。计数从“计数初始值 开始,每当CLK信号出现一次,计数值减1,当计数值减为0时,从OUT端输出规定的信号(具体形式与工作模式有关)。当CLK信号出现时,计数值是否减1(即是否计数),受到“门控信号”GATE的影响,一般,仅当GATE有效时,才减1.门控信号GATE如何影响计数操作,以及输出端OUT在各种情况下输出的信号形式与定时/计数器的工作模式有关。
8259:1. IR线上提出了中断请求的中断源,即出现请求,IRR中断请求寄存器(共有8位D7~D0)对应于连接在IR0~IR7线上的外设的中断请求,哪一根输入线有请求,哪一根输入线就置1。
2. 若OCW1(IMR中断屏蔽寄存器)未使该中断请求屏蔽(对应位为0时不屏蔽),该请求被送入PR(优先权分析器)比较。否则,不送入PR比较。
3. PR把新进入的请求与ISR(服务中寄存器)中正在被处理的中断进行比较。如果新进入的请求优先级较低,则8259不向CPU提出请求。如果新进入的请求优先级较高,则8259使INT引脚输出高电平,向CPU提出请求。
4. 如果CPU内部的标志寄存器中的IF(中断允许标志)为0,CPU不响应该请求。若IF=1,CPU在执行完当前指令后,从CPU的INTA引脚上向8259发出两个负脉冲。
5.第一个 INTA负脉冲到达8259时,8259完成以下三项工作:
a.使IRR(中断请求寄存器)的锁存功能失效。这样一来,在IR7~IR0上的请求信号就不会被8259接收。直到第二个INTA负脉冲到达8259时,才又使IRR的锁存功能有效。
b.使ISR(服务中寄存器)中的相应位置1。
c.使IRR中的相应位清0。
6.第二个INTA负脉冲到达8259时,8259完成以下工作:
a.将中断类型码(ICW2中的值)送到数据总线上,CPU将其保存在“内部暂存器”中。
b.如果ICW4(它设定级中断联方式之特定完全嵌套方式,将在8259的工作方式中详述ICW4)中设置了中断自动结束方式,则将ISR的相应位清0。

阅读更多 >>>  vb程序设计网课,vb课程介绍

大家给介绍下学习汇编语言的经典教材啊,要注明作者和版本哦!谢啦

清华王爽的

第二版,比较适合初学者,有很多的实践内容,对一些原理性的内容分析得也比较深入.

同样清华的杨季文的<80X86汇编语言程序设计教程>,特点是内容很全,系统性比较强,可以作为今后学习工作的参考书,我现在还经常查阅.

如果学习32位Windows汇编的话,可以看罗云彬的

,具体的可以百度一下,网上介绍的已经很多了.

最后祝你学习顺利.

王爽《汇编语言》 16位

IBM-PC汇编语言程序设计(第2版)16位

云斌《windows32环境下汇编语言设计》32位

1.先看,王爽《汇编语言》 ,适合初学者,讲得浅显易懂。

2.再看,《80X86汇编语言程序设计教程》,这本书很好。讲得系统全面。

或者看,IBM-PC汇编语言程序设计(第2版)

3.如果最想做点实用的,最后看,罗云彬的《windows32环境下汇编语言设计》,这本书,现在第三版,叫做《琢石成器》,很好的,电子工业出版社。

这三本都是不同阶段的经典教材。 这三本书从薄到厚,《琢石成器》有七百多页。希望这位仁兄注重基础,一步一个脚印。。不要急于求成。

至于学习经验,哈哈,编程就是多实践,光看书,是不会找到实践的那种感觉的。一定要多做东西。从制作和创造中寻找快乐,等有一点基础之后,可以多和别人交流。。。。

谁懂汇编语言 我这个要求的要怎么编写 懂的帮看一下

1:
PROG1:
MOV R7,#16
MOV R0,#30H
MOV A,#0
PROG11:
MOV @R0,A
INC R0
INC A
DJNZ R7,PROG11
RET
2:
PROG2:
MOV R0,#30H
MOV R1,#40H
MOV R7,#16
PROG21:
MOV A,@R0
MOV @R1,A
INC R0
INC R1
DJNZ R7,PROG21
RET
3:
PROG3:
MOV R0,#40H
MOV DPTR,#4800H
MOV R7,#16
PROG31:
MOV A,@R0
MOVX @DPTR,A
INC R0
INC DPTR
DJNZ R7,PROG31
RET
4:
PROG4:
MOV DPTR,#4800H
MOV R7,#16
PROG41:
MOV DPH,#48H
MOVX A,@DPTR
MOV DPH,#58H
MOVX @DPTR,A
INC DPTR
DJNZ R7,PROG41
RET
5:
PROG5:
MOV DPTR,#5800H
MOV R0,#50H
MOV R7,#16
PROG51:
MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
DJNZ R7,PROG51
RET

ARM9嵌入式系统设计基础教程的第9章 ARM汇编语言程序设计基础

9.1 ADS集成开发环境9.1.1 ADS工具包的组成9.1.2 ADS开发工具集9.1.3 Code Warrior IDE的创建9.1.4 AXD调试器的使用9.2 ARM汇编伪指令9.2.1 数据常量定义伪指令9.2.2 数据变量定义伪指令9.2.3 内存分配伪指令9.2.4 汇编控制伪指令9.2.5 其他常用的伪指令9.3 ARM的汇编语言结构9.3.1 ARM汇编语言程序结构9.3.2 ARM汇编语言的语句格式9.3.3 基于Windows下ADS的汇编语言程序结构9.3.4 基于Linux下GCC的汇编语言程序结构9.4 ARM汇编语言程序调试9.4.1 ADS软件模拟环境下的程序调试9.4.2 ADS硬件仿真器环境下的程序调试9.4.3 ADS Wiggler调试电缆环境下的程序调试9.4.4 Linux环境下的gdb程序调试9.5 ARM汇编语言与C语言混合编程9.5.1 基本的ATPCS9.5.2 汇编程序中调用C程序9.5.3 C程序中调用汇编程序9.5.4 C程序中内嵌汇编语句9.5.5 从汇编程序中访问C程序变量思考题与习题

网站数据信息

"汇编程序设计教程,ARM9嵌入式系统设计基础教程的第9章 ARM汇编语言程序设计基础"浏览人数已经达到17次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:汇编程序设计教程,ARM9嵌入式系统设计基础教程的第9章 ARM汇编语言程序设计基础的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!