::: ::: Assembler [ ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
  CSEG segment common 'code' ;  
  assume cs:cseg,ds:cseg,es:cseg,ss:cseg
  org 100h
 
  print macro
  local p1, p2, del, write
  mov ah,0
  push ax
  push ax
  push dx
  mov ah,9
  mov dx,offset newstr
  int 21h
  pop dx
  pop ax
  mov bl,16
  div bl
  push ax
  mov dl,al
  cmp dl,9h
  jle p1
  add dl,7h
   
  p1: add dl,30h
  mov ah,02
  int 21h
  pop ax
  mov dl,ah
  cmp dl,9h
  jle p2
  add dl,7h
 
  p2: add dl,30h
  mov ah,02
  int 21h
  mov ah,09
  mov dx,offset newstr
  int 21h
  pop ax
  xor cx,cx
  mov bl,2h
  del:div bl
  inc cx
  push ax
  mov ah,0
  cmp al,0h
  jgdel
  mov dl,ah
  add dl,30h
  mov ah,02h
  int 21h
  write:pop ax
  mov dl,ah
  add dl,30h
  mov ah,02h
  int 21h
  loop write
  mov ah,9
  mov dx,offset newstr
  int 21h
  endm
 
 
 
 
  main proc ;  main
 
  mov ah,9
  mov dx,offset message
  int 21h
  mov ah,9
  mov dx,offset newstr
  int 21h
  call enter
  call calc
  push ax
  push ax
  mov ah,9
  mov dx,offset chc
  int 21h
  pop ax
  print
  mov ah,9
  mov dx,offset smesh
  int 21h
  pop ax
  sal ax,3
  print
 
 
  mov ax,4c00h
  int 21h
 
 
  message db'Enter A and B $'
  newstrdb 0AH,0DH, '$'
  cha db0AH,0DH,' Chislo A: $'
  chb db0AH,0DH,' Chislo B: $'
  chc db0AH,0DH,' Chislo C: $'
  cha2 db 0AH,0DH,' Chislo A/2: $'
  smesh db 0AH,0DH,' Chislo C posle sdviga: $'
 
 
  enter proc
  xor ax,ax
  mov ah,1h
  int 21h
  mov dl,al
  sub dl,30h
  cmp dl,9h
  jle M1
  sub dl,7h
  M1: mov cl,4h
  shl dl,cl
  int 21h
  sub al,30h
  cmp al,9h
  jle M2
  sub al,7h
  M2: add dl,al
  push dx
  push dx
  mov ah,9h
  mov dx,offset cha
  int 21h
  pop dx
  mov ax,dx
  print
 
  ; 
 
  mov ah,02h
  mov dl,' '
  int 21h
 
  xor ax,ax ;  ax
  mov ah,1h
  int 21h
  mov dl,al
  sub dl,30h
  cmp dl,9h
  jle z1
  sub dl,7h
  z1: mov cl,4h
  shl dl,cl
  int 21h
  sub al,30h
  cmp al,9h
  jle z2
  sub al,7h
  z2: add dl,al
  pushdx
  push dx
  mov ah,9
  mov dx,offset chb
  int 21h
  pop dx
  mov ax,dx 
  print
   
  pushbp
  mov bp,sp
  mov ax,[bp+6]
  pop bp
  pushax
  ret
  enter endp
 
  calc proc
  push bp
  mov bp,sp
  mov ah,02h
  mov dl,' '
  int 21h
  mov ax,[bp+6]
  mov dx,[bp+4]
  xor bx,bx
  mov ah,0
  mov dh,0
  mov bl,2
  div bl
  push ax
  push dx
  mov ah,0
  print
  pop dx
  pop ax
  add al,dl
  mov sp,bp
  pop bp
  ret
  calc endp
 
  main endp ;  main
  code ends ;  
  end main
<<<

Assembler [ ]
:  1-  () Sauron
:
: 04.01.2009  17:03
: 4
: 2204
: 9 (2|1|2|2|2) [2]

: , , C=A/2+B, 4 ()
Sauron

:
 1-  () Sauron ::: 30.06.2009 | 09:45
Sauron (.18)
: 40487
:
. : 168
: 27.04.2006 (15)
Ant_on92 15.06.2009 | 13:00:


--------------------
.
Ant_on92* ::: 15.06.2009 | 13:00
Ant_on92 (.8)
: 1538
: .
. : 2
: 13.09.2006 (615)
- )))

, , ...


--------------------
Hello, World!
 1-  () ::: 11.02.2009 | 18:31
 (.17)
: 33506
:
. : 101
: 27.09.2008 (8524)
.. assembler.


--------------------
. Spring
Kane* ::: 11.01.2009 | 08:50
Kane (.8)
: 1556
:
. : 9
: 09.10.2008 (8737)
. .


--------------------
. .