C的编程之路 发表于 2017-12-8 20:13:58

11111111111111

chaiyinlei 发表于 2018-1-16 21:29:19

有点不懂,来看看

qkhill 发表于 2018-8-14 20:07:59

前来考古。

TZJ5200 发表于 2018-9-7 08:33:32

解法一:

assume cs:code

a segment
    db 1, 2, 3, 4, 5, 6, 7, 8 ;即使a段不满16字节,也占用0-f内存空间。
a ends

b segment
    db 1, 2, 3, 4, 5, 6, 7, 8 ;即使b段不满16字节,也占用10-1f内存空间。
b ends

k segment
    db 0, 0, 0, 0, 0, 0, 0, 0 ;即使k段不满16字节,也占用20-2f内存空间。
k ends

code segment
start: mov ax,a      
       mov ds,ax       ;将a段关联ds段。则使用偏移地址即可得到b、k段数据。
   
         mov bx,0h       ;编译器默认十进制。
         mov cx,8

   s:mov ax,0h
       add al,
       add al, ;b段在a段基础上偏移10H。
       mov ,al ;k段在a段基础上偏移20H。
       inc bx
       loop s
   
       mov ax, 4c00H
       int 21H
         
code ends
end start            ;代码33行。

解法二:

assume cs:code

a segment
    db 1, 2, 3, 4, 5, 6, 7, 8 ;即使a段不满16字节,也占用0-f内存空间。
a ends

b segment
    db 1, 2, 3, 4, 5, 6, 7, 8 ;即使b段不满16字节,也占用10-1f内存空间。
b ends

k segment
    db 0, 0, 0, 0, 0, 0, 0, 0 ;即使k段不满16字节,也占用20-2f内存空间。
k ends

code segment
start:mov ax,a
          mov ss,ax         ;将a段关联ss段。
          mov ax,b
          mov es,ax         ;将b段关联es段。
          mov ax,k
          mov ds,ax         ;将k段关联ds段。因为要将结果存到k段中,
                        ;所以k段关联ds段代码看起来更清爽。
             mov bx,0
          mov cx,8
         
    s:mov al,ss:    ;将a段数据赋予al中。
          add al,es:    ;将b段数据相加至al中
          mov ,al       ;将a、b段数据相加结果赋予k段中。
          inc bx         
          loop s
         
          mov ax,4c00h
          int 21h
         
code ends
end start               ;代码36行。

你笑的好美 发表于 2019-4-30 15:39:42

来学习

你笑的好美 发表于 2019-4-30 16:36:08

code segment
   
    start: mov ax,a
         mov ds,ax
         mov ax,b
         mov ss,ax
         mov sp,16
         
         mov bx,0
         mov cx,8
               
      s: push
         add bx,2
         loop s
            
         mov ax, 4c00h
         int 21h

    code ends

感觉这样也是对的啊

春日 发表于 2019-7-12 14:11:40

学完了 但是 还是有点不理解 所以来看看

maxwlh 发表于 2019-7-25 10:36:08

正在学习汇编

wudong552200 发表于 2019-7-27 20:34:42

bnbcghb

我是智障 发表于 2019-7-27 23:48:46

很有用,谢谢

呵呵aust 发表于 2019-7-28 00:22:01

过来学习

青年学者 发表于 2019-8-8 07:37:13

dd

653667765 发表于 2019-9-29 10:58:00

asd zhhc

dguest 发表于 2019-10-16 13:34:44

看看标准答案!

sanders 发表于 2019-10-18 22:51:44

第二个 只能用push
assume cs:code

a segment
        dw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends

b segment
        dw 0,0,0,0,0,0,0,0
b ends

code segment
start:
        mov ax,a
        mov ds,ax
       
        mov ax,b
        mov ss,ax
        mov sp,16
       
        mov cx,8
        mov bx,0
        s:
                push ds:
                add bx,2
        loop s
       
        mov ax,4c00h
        int 21h
code ends
end start

1343450392 发表于 2019-10-30 16:35:39

好好好

blithe2015 发表于 2019-11-1 10:40:35


大力支持,学完了顺便做题巩固知识。

你要加油啊 发表于 2020-5-12 00:05:22

今天早点休息

你要加油啊 发表于 2020-5-12 00:10:25

8+8的时候al不会溢出吗?不会有影响吗?

quiest80 发表于 2020-5-24 15:59:16

学习了
页: 1 2 3 [4] 5
查看完整版本: Assembly language 实验5