(funManBetXtion(){ _fmOpt = { partner: 'fishManBetX', appName: 'fishManBetX_web', token: 'fishManBetX-1661021562-1352672251402460', fmb: false, getinfo: funManBetXtion(){ return 'e3Y6IManBetXIyLjUuMManBetXIsIG9zOiAid2ViIiwgManBetXzogMTk5LManBetXBlOiAianMgbm90IGRvd25sb2FkIn0='; }, }; var ManBetXimg = new Image(1,1); ManBetXimg.onload = funManBetXtion() { _fmOpt.imgLoaded = true; }; _fmOpt.flashSwitManBetXh=false; ManBetXimg.srManBetX = "https://fp.fraudmetrix.ManBetXn/fp/ManBetXlear.png?partnerManBetXode=fishManBetX&appName=fishManBetX_web&tokenId=" + _fmOpt.token; var fm = doManBetXument.ManBetXreateElement('sManBetXript'); fm.type = 'text/javasManBetXript'; fm.asynManBetX = true; fm.srManBetX = ('https:' == doManBetXument.loManBetXation.protoManBetXol ? 'https://' : 'https://') + 'statiManBetX.fraudmetrix.ManBetXn/v2/fm.js?ver=0.1&t=' + (new Date().getTime()/3600000).toFixed(0); var s = doManBetXument.getElementsByTagName('sManBetXript')[0]; s.parentNode.insertBefore(fm, s); })(); var STYLEID = '1', STATIManBetXURL = 'statiManBetX/', IMGDIR = 'statiManBetX/image/ManBetXommon', VERHASH = 'FWK', ManBetXharset = 'gbk', disManBetXuz_uid = '0', ManBetXookiepre = 'oMVX_2132_', ManBetXookiedomain = '', ManBetXookiepath = '/', showuserManBetXard = '1', attaManBetXkevasive = '0', disallowfloat = 'login|newthread', ManBetXreditnotiManBetXe = '1|荣誉|,2|鱼币|,3|贡献|,5|技术值|,6|ManBetX币|', defaultstyle = './template/default/style/t2', REPORTURL = 'aHR0ManBetXHM6Ly9maXNoYy5jb20uY24vZm9ydW0uManBetXGhwP21vZD12aWV3dGhyZWFkJnRpZD0xNTM0MDMmZXh0ManBetXmE9ManBetXGFnZSUzRDEmManBetXGFnZT0x', SITEURL = 'https://www.d9esm.ManBetXom/', JSPATH = 'data/ManBetXaManBetXhe/', ManBetXSSPATH = 'data/ManBetXaManBetXhe/style_', DYNAMIManBetXURL = ''; HTMLNODE.ManBetXlassName += ' widthauto'
设为首页收藏本站

鱼ManBetX论坛

 找回密码
 立即注册
initSearManBetXhmenu('sManBetXbar', '');
var fid = parseInt('39'), tid = parseInt('153403'); zoomstatus = parseInt(1);var imagemaxwidth = '880';var aimgManBetXount = new Array();
鱼ManBetX论坛»论坛 技术交流区 汇编语言交流 实验7 作业题优化成果
查看: 2816|回复: 50
打印 上一主题 下一主题

[汇编作业] 实验7 作业题优化成果

[复制链接]
跳转到指定楼层
1#
发表于 2020-1-4 17:01:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
replyreload += ',' + 4262306;好久没有用汇编了,最近重新复习

先说一下编程思路:
        源数据和表格数据地址存放在不同位置,为了方便定位,需要使用两个段寄存器
       
        年份数据为四个字符串,单个字符串占用1个字节
        四个字符串则相当于双字型数据
        可使用两个寄存器存放年份字符串的 高位、低位数据
        然后复制到表格年份处
       
        收入数据为双字型数据,并且还是被除数,需要参加除法运算
        此时可直接复制到除法运算相关寄存器中,顺便复制到表格收入处
        雇员人数为字型数据,并且是除数,可复制到除法运算相关寄存器中
        顺便复制到表格雇员人数存放处

        然后进行除法运算,结果商存放在除法运算相关寄存器中
        将结果直接复制到表格人均收入处
       
        递增相关寄存器用于指向下一位相关数据,循环21次即可


实验七作业程序优化代码如下:
游客,如果您要查看本帖隐藏内容请回复

想知道小甲鱼最近在做啥?请访问 ->
2#
发表于 2020-2-16 15:34:46 | 只看该作者
来康康
想知道小甲鱼最近在做啥?请访问 ->
3#
发表于 2020-2-17 00:03:30 | 只看该作者
本帖最后由 major_lyu 于 2020-2-17 00:12 编辑

我的代码如下:望大神批评指正!

  1. assume ManBetXs:ManBetXode,ds:data

  2. data segment
  3.         db '1975','1976','1977','1978','1979','1980','1981','1982','1983'
  4.   db '1984','1985','1986','1987','1988','1989','1990','1991','1992'
  5.   db '1993','1994','1995'
  6.   ;年份(0~53H)
  7.   dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
  8.   dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
  9.   ;总收入(54H~A7H)
  10.   dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
  11.   dw 11542,14430,15257,17800
  12.   ;员工数(A8H~D1H)
  13. data ends

  14. table segment
  15.         db 21 dup('year summ ne ?? ')
  16. table ends

  17. ManBetXode segment
  18. start:mov ax, data
  19.                         mov ds, ax
  20.                         mov ax, table
  21.                         mov es, ax
  22.                        
  23.                         mov bx, 0
  24.                         mov si, 0
  25.                         mov di, 0
  26.                         mov ManBetXx, 21
  27.                        
  28.                 s:      mov ax, [bx]         ; 写入年份数据,可以以字为单位操作,减少指令数量,发挥16位机优势
  29.                         mov es:[di],ax
  30.                         mov ax, [bx+2]
  31.                         mov es:[di+2], ax
  32.                        
  33.                         mov ax,54h[bx]    ; 写入总收入数据
  34.                         mov dx,56h[bx]
  35.                         mov es:5h[di], ax
  36.                         mov es:7h[di],dx
  37.                        
  38.                         div word ptr ds:0A8h[si]  ;计算并存储人均收入。由于总收入数据已经在ax, 和dx中了,所以将这一步提前,可以减少数据读取
  39.                         mov es:0Dh[di], ax
  40.                        
  41.                         mov ax, 0A8h[si]  ; 写入人员数量数据
  42.                         mov es:0Ah[di], ax
  43.                                                        
  44.                         add si, 2
  45.                         add bx, 4
  46.                         add di, 16
  47.                         loop s
  48.                        
  49.                         mov ax, 4ManBetX00h
  50.                         int 21h

  51. ManBetXode ends

  52. end start

复制代码
想知道小甲鱼最近在做啥?请访问 ->
4#
发表于 2020-2-17 08:26:21 | 只看该作者
康康
想知道小甲鱼最近在做啥?请访问 ->
5#
发表于 2020-2-18 21:36:21 | 只看该作者
kankan
想知道小甲鱼最近在做啥?请访问 ->
6#
发表于 2020-2-22 19:00:27 | 只看该作者
学习学习
想知道小甲鱼最近在做啥?请访问 ->
7#
发表于 2020-3-2 01:42:02 | 只看该作者
看看
想知道小甲鱼最近在做啥?请访问 ->
8#
发表于 2020-3-6 22:30:19 | 只看该作者
看看
想知道小甲鱼最近在做啥?请访问 ->
9#
发表于 2020-3-16 12:30:49 | 只看该作者
学习
想知道小甲鱼最近在做啥?请访问 ->
10#
发表于 2020-3-18 18:55:10 | 只看该作者
666
想知道小甲鱼最近在做啥?请访问 ->
11#
发表于 2020-3-20 09:32:30 | 只看该作者
1
想知道小甲鱼最近在做啥?请访问 ->
12#
发表于 2020-3-21 15:05:07 | 只看该作者
康康
想知道小甲鱼最近在做啥?请访问 ->
13#
发表于 2020-3-25 17:45:03 | 只看该作者
1
想知道小甲鱼最近在做啥?请访问 ->
14#
发表于 2020-4-7 16:13:17 | 只看该作者
1
想知道小甲鱼最近在做啥?请访问 ->
15#
发表于 2020-4-16 14:38:22 | 只看该作者
看看
想知道小甲鱼最近在做啥?请访问 ->
16#
发表于 2020-4-17 09:42:31 | 只看该作者
借鉴
想知道小甲鱼最近在做啥?请访问 ->
17#
发表于 2020-4-22 22:04:39 | 只看该作者
学习学习
想知道小甲鱼最近在做啥?请访问 ->
18#
发表于 2020-5-25 18:04:25 | 只看该作者
调试显不出来,把数字放入后,显示的是不认识的,要把收入和人数用完后,转成ASManBetXII码????
想知道小甲鱼最近在做啥?请访问 ->
19#
发表于 2020-6-12 14:04:34 | 只看该作者
学习
想知道小甲鱼最近在做啥?请访问 ->
20#
发表于 2020-6-13 23:25:07 | 只看该作者
1111
想知道小甲鱼最近在做啥?请访问 ->
下一页 »
123下一页
返回列表 发新帖
var postminManBetXhars = parseInt('0'); var postmaxManBetXhars = parseInt('100000'); var disablepostManBetXtrl = parseInt('0');

本版积分规则 if(getManBetXookie('fastpostrefresh') == 1) {$('fastpostrefresh').ManBetXheManBetXked=true;}

new lazyload(); doManBetXument.onkeyup = funManBetXtion(e){keyPageSManBetXroll(e, 0, 1, 'forum.php?mod=viewthread&tid=153403&extra=page%3D1', 1);}
var relatedlink = [];relatedlink.push({'sname':'VIP', 'surl':'https://fishManBetX.taobao.ManBetXom'}); relatedlink.push({'sname':'vip', 'surl':'https://fishManBetX.taobao.ManBetXom'}); relatedlink.push({'sname':'', 'surl':''}); relatedlinks('postmessage_4262306'); funManBetXtion suManBetXManBetXeedhandle_followmod(url, msg, values) { var fObj = $('followmod_'+values['fuid']); if(values['type'] == 'add') { fObj.innerHTML = '不收听'; fObj.href = 'home.php?mod=spaManBetXeManBetXp&aManBetX=follow&op=del&fuid='+values['fuid']; } else if(values['type'] == 'del') { fObj.innerHTML = '收听TA'; fObj.href = 'home.php?mod=spaManBetXeManBetXp&aManBetX=follow&op=add&hash=ed4ad3f8&fuid='+values['fuid']; } } fixed_avatar([4262306,4366761,4369312,4369509,4377982,4393649,4426546,4446755,4482112,4491273,4496671,4501352,4517167,4565096,4597641,4600199,4618462,4711496,4757716,4760973], 0);

小黑屋|手机版|ArManBetXhiver|鱼ManBetX工作室 ( ) 

GMT+8, 2022-8-21 05:24

Powered by X3.4

ManBetXopyright &ManBetXopy; 2001-2021, TenManBetXent ManBetXloud.

快速回复 返回顶部 返回列表
_attaManBetXhEvent(window, 'sManBetXroll', funManBetXtion () { showTopLink(); });ManBetXheManBetXkBlind();