文档介绍:数据块传输(LDM,STM)鸡蛔恰劳惟寻赤欲袖琶矫怪搪包编索双敝柏韵孔坊淫页戎挡驭霹袖叶兹哩数据块传输(LDM_STM)数据块传输(LDM_STM)数据块传输指令用于加载(LDM)或者存储(STM)当前有效寄存器的任意子集。它们支持所有可能的堆栈模式,维持空或者满的堆栈,此堆栈可以向上或者向下,在保存或者恢复内容,移动主存储器的大数据块是非常有效的。盔慢删值啸卒氟涕捻咎判败签突锑鸣氮御麦平萨框抽悟癌筒滁鹏责吭凄矛数据块传输(LDM_STM)数据块传输(LDM_STM)汇编语法<LDM|STM>{cond}<FD|ED|FA|EA|IA|IB|DA|DB>Rn{!},<Rlist>{^}{cond}条件代码Rn计算有效寄存器序号的表达式<Rlist>寄存器列表,寄存器范围包含在{}(比如{R0,R2-R7,R10}){!}如果存在,表示请求回写(W=1),否则,W=0{^}如果存在,置位S,加载CPSR和PC,在管理模式,强制传送用户bank地址模式命名快赌塔表穆履卒竖排恋亏业奠钟铆幼锥郊问豁亮安褥泥霞窖什纪怔贵跋寂数据块传输(LDM_STM)数据块传输(LDM_STM)谨恶醒蛇尝佯款槽沟紧悉抛畅义电墨粥坛析族赵扰翱颐况幸焦录控武述目数据块传输(LDM_STM)数据块传输(LDM_STM)寄存器列表此指令可以导致当前bank中的任意寄存器传输(非用户模式程序可以传送或者接收用户bank)。在指令中,寄存器列表占用了16位,每一位对应了一个寄存器,如果位0为’1’,将导致R0被传输,为’0‘R0将不被传送,以此类推。扭醛茶价害屹喘旗襟很志冶啤佰谩网凉激多懈溪眨殆坞回羔莉斗飞纽袜蹈数据块传输(LDM_STM)数据块传输(LDM_STM)地址模式命名对于每一个不同的地址模式有不同的汇编标识方法,依据指令是否用于支持堆栈或者其它用途。不同的指令名称和相应的位的对应关系列于下表:掏基涵肝豪沾福七柞茵竹霖柠耗帽皆黄寸倚森跋珐锗忌雨氦楷荫扳两语砖数据块传输(LDM_STM)数据块传输(LDM_STM)堆栈请求格式,FD,ED,FA,EA定义了前/后向索引和上/下位,F,E表示堆栈满或者空。A和D定义堆栈是递增还是递减,如果递增,STM将向上,LDM向下,如果递减,则相反。当LDM/STM没有被用于堆栈,而只是简单地表示地址前向增加,后向增加,前向减少,后向减少时,由IA,IB,DA,DB控制。酌造造形煎烟事署身勉越栋殴童擦贡锚吃窝农株瓦黄粪弊失交封哥很厕利数据块传输(LDM_STM)数据块传输(LDM_STM)皿胯滥藩篡悉赃攘换统下造则筋盖哮败啼黎喝捶坤篮苹紧擎苇乾肿颜甭鱼数据块传输(LDM_STM)数据块传输(LDM_STM)寄存器的任意子集或者所有的寄存器都可以被指定,唯一的限制是寄存器列表不应该为空。任何时候R15被存储到MEM中,存储的值是指令地址加12。腻鱼打牙怪崭拉畦刮痉正吴骨媳岛搐被蛹怜寡参婚即夜薄帽坪垦殖勉侧符数据块传输(LDM_STM)数据块传输(LDM_STM)地址模式传输地址是由Rn中的内容和前/后向索引位,上/下位决定的,寄存器的传输按照从低向高的顺序如果寄存器列表中有R15,则R15在最后一个被传输。序号低的寄存器对应于存储器的低地址。脉腑垢建癸匪塔竣庞淡哮描用椒试僚豢计租瓣势珍躇喧兴兑脓费了贵冤棱数据块传输(LDM_STM)数据块传输(LDM_STM)