Advertisement
Sanchi285

All assembly before mid

Jul 25th, 2018
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ; add two number
  2.  
  3. mov al,  2
  4. mov bl, 2
  5. add al,bl    
  6.  
  7. ;sub two number
  8.    
  9. mov al,  3
  10. mov bl, 2
  11. sub al,bl
  12.  
  13.  
  14. ;mul opperation
  15.  
  16. mov al,4
  17. mov bl,2
  18. mul bl
  19.  
  20.  
  21. ;label define and jmp
  22.  
  23. jmp label_2 ; jump into label 2
  24.  
  25. label_1:
  26. mov al,1
  27. jmp label_3  ; jump into label 3
  28.  
  29. label_2:
  30. mov al,2
  31. jmp label_1 ; jump into label 1
  32.  
  33. label_3:
  34. mov al,3
  35.  
  36.  
  37. lab2
  38. ---------------------------
  39.  
  40.  
  41. MOV AX, 5H
  42. MOV BX, 10D
  43. MOV CX,0D
  44. ADD AX,AX
  45. ADD AX,5
  46. ADD AX,BX
  47. ADD AX,AX
  48. ADD BX,10d
  49. ADD BX,10d
  50. ADD BX,10D
  51. ADD BX,10D
  52. ADD BX,10D
  53. ADD CX,AX
  54. SUB CX,BX
  55.  
  56.  
  57. ;USING MULTIPLICATION
  58.  
  59. MOV AX,5H
  60. MOV BX,10D
  61. MOV DX,3D
  62. MUL DX
  63. MOV DX,2
  64. ADD AX,BX
  65. MUL DX
  66. MOV DX,6
  67. MOV CX,AX
  68. MOV AX,BX
  69. MUL DX
  70. SUB CX,AX
  71.  
  72.  
  73.  
  74.     jump instruction
  75.         jmp label
  76.  
  77.  example : label 0:
  78.                  mov ax,5
  79.  
  80.  
  81.  
  82.        label 1:
  83.         ADD AX,BX
  84.         JMP label 0 ;unconditional jump
  85.         ADD Ax,Cx
  86.  
  87. Conditional jump
  88. -------------------------------------------------------------------------------------
  89. Singed                         Unsinged jump
  90. ----------                     ------------------
  91.  
  92. mathematical work              charecters 'a'->'z'
  93.                                Cmp 'a','z'
  94.  
  95.                                  
  96. CMP AX,BX                      JA,JB,JE, JAE, JBE, JNA,JNB,JNE,JNAE,JNBE (A means above , B means Bellow)
  97. JG label0 ; if ax > bx
  98. JL label2 ; if ax > bx
  99.  
  100.  
  101. JNG (<=)
  102. JNL (>=)
  103. JGE
  104. JLE(>=)
  105. JNE(<=)
  106. JNGE(<)
  107. JNLE(>)
  108.  
  109. ;jump above
  110.  
  111. JMP label1
  112.  
  113. label0:
  114. mov ax,-1
  115. hlt ; stop the programme
  116.  
  117. label2:
  118. mov ax,1
  119. hlt
  120.  
  121.  
  122. label1:
  123. mov ax,7FFFh
  124. mov bx,8000h
  125. cmp bx,ax
  126. JA label0
  127. mov ax,0
  128.  
  129. ;jump greater
  130. JMP label1
  131.  
  132. label0:
  133. mov ax,-1
  134. hlt ; stop the programme here
  135. label2:
  136. mov ax,1
  137. hlt
  138.  
  139.  
  140. label1:
  141. mov ax,7FFFh
  142. mov bx,8000h
  143. cmp bx,ax
  144. JG label0    ;if()
  145. mov ax,0     ;else()
  146.  
  147.  
  148. online
  149. ------------------------------------
  150. MOV AX,5
  151. MOV BX,7
  152. MOV CX,4
  153.  
  154. MOV DX,AX
  155.  
  156. MOV AX,9
  157. MUL CX
  158.  
  159. MOV CX,AX
  160.  
  161. Mov Ax,6
  162. Mul Bx
  163.  
  164. Mov Bx,Ax
  165.  
  166. Mov Ax,5
  167.  
  168. Mov Dx,18
  169.  
  170. Mul Dx
  171.  
  172. Add cx,bx
  173.  
  174. sub cx,ax
  175.  
  176. mov ax,cx
  177.  
  178.  
  179. mov Dx,0
  180.  
  181. CMP ax,dx
  182. JL Label0
  183. JG Label1
  184.  
  185.  
  186. Label0:
  187. mov dx,-1
  188. hlt
  189.  
  190. Label1:
  191. mov dx,1
  192.  
  193.  
  194.  
  195.  
  196.  
  197. ;Bonus
  198. Mov ax,1
  199. mov bx,2
  200. mov cx,3
  201.  
  202.  
  203. Label0:
  204. cmp ax,bx
  205. JL Label1
  206. JG Label3
  207.  
  208. Label1:
  209. cmp ax,cx
  210. JL Label2
  211. JG label6
  212.  
  213.  
  214. Label2:
  215. mov bx,ax
  216. hlt
  217.  
  218.  
  219. Label3:
  220. Cmp bx,cx
  221. JL Label4
  222. JG Label7
  223.  
  224.  
  225. Label4:
  226. mov bx,bx
  227. hlt
  228.  
  229.  
  230. Label6:
  231. cmp cx,bx
  232. JL label7
  233.  
  234.  
  235. label7:
  236. mov bx,cx
  237.  
  238. lab4
  239. ===================
  240. ;Task3:
  241.  
  242. mov ah,1
  243. int 21h
  244.  
  245. sub al,48
  246. mov bl,al
  247.  
  248. add bl,2
  249.  
  250. add bl,48
  251.      
  252. mov cl,32    
  253.      
  254. mov ah,2
  255. mov dl,cl
  256. int 21h
  257.  
  258. mov ah,2
  259. mov dl,bl
  260. int 21h
  261.  
  262.  
  263. TEST instruction
  264.  
  265.  TEST (AND)                               AX=7FFFH
  266.                                           BX=00001
  267. TEST AX,BX                                AX=00001
  268.  
  269.  
  270.  
  271.  
  272. ;TASK1
  273. MOV AX,00000H
  274. MOV BX,00001
  275.  
  276. TEST AX,00001h
  277.  
  278. JNZ ODD
  279.  
  280.  
  281. EVEN:
  282. MOV BX,1
  283.  
  284. ODD:
  285. MOV BX,0
  286.    
  287.    
  288. ;TASK 2 SHOW a=b (* you have to take input *)-------------------------------------------------------------
  289.  
  290. moV AH,1
  291. INT 21H  ;INPUT DONE
  292. ADD AL,1
  293. MOV BL,AL  ; WE HAVE TO DO THIS BECAUSE WHEN WE SHOW
  294.            ; DL,61 IT DISPLACE THE VALUE OF aL
  295.          
  296.          
  297. MOV AH,2
  298. MOV DL,61
  299. INT 21H
  300.                
  301. MOV AH,2
  302. MOV DL,BL
  303. INT 21h  ;OUT PUT DONE
  304.  
  305. ;Task3:
  306.  
  307. MOV al,60h
  308. MOV bl,65h
  309.  
  310. cmp al,bl
  311. JLe label0
  312. JG  showbl
  313.  
  314.  
  315.  
  316.  
  317. showbl:
  318. add bl,48
  319. mov ah,2
  320. mov dl,bl
  321. int 21h
  322. hlt
  323.  
  324.  
  325. label0:
  326. add al,48
  327. mov ah,2
  328. mov dl,al
  329. int 21h
  330. hlt
  331.  
  332. task 4 check note book
  333.  
  334.  
  335. lab5
  336. -=================================
  337. ;special loop
  338.  
  339. mov cx,1 ; if cx=0 then it will be a infinity loop
  340. mov ah,2
  341. mov dl,'p'
  342.  
  343.  
  344. TOP:
  345.  int 21h
  346.  loop TOP
  347.  
  348.  
  349. ;input till new line----------------------------------------------
  350.                  
  351. start:
  352. mov cl,0
  353. input:    
  354. mov ah,1
  355. int 21h
  356. cmp al,0DH
  357. JE newline
  358. inc cl
  359. jmp input
  360.  
  361.  
  362. newline:
  363. MOV dl, 10
  364. MOV ah, 02h
  365. INT 21h
  366. MOV dl, 13
  367. MOV ah, 02h
  368. INT 21h
  369.        
  370. MOV ah, 02h      
  371. add cl,30h
  372. mov dl,cl
  373. INT 21h
  374.  
  375. hlt
  376.  
  377.  
  378. ;fibonacci number------------------------------------------------------
  379. mov al,1
  380. mov bl,1
  381. mov dl,3
  382. mov cl,0
  383.  
  384.  
  385. Fibo:
  386.    cmp dl,6
  387.    JG End
  388.    mov cl,bl
  389.    add bl,al        
  390.    mov al,cl
  391.    inc dl        
  392.    jmp Fibo
  393.        
  394. End:
  395. mov ah,2
  396. mov dl,bl
  397. add dl,48
  398. int 21h
  399.  
  400. hlt
  401.  
  402.  
  403. ;star Piramid--------------------------------------------------------------
  404.  
  405. mov bx,1
  406.  
  407. star:
  408. mov cx,bx ; if cx=0 then it will be a infinity loop
  409. mov ah,2
  410. mov dl,'*'
  411.  
  412.  
  413. TOP:
  414.  int 21h
  415.  loop TOP
  416.  
  417.  
  418. newline:
  419. MOV dl, 10
  420. MOV ah, 02h
  421. INT 21h
  422. MOV dl, 13
  423. MOV ah, 02h
  424. INT 21h
  425. add bx,1
  426.  
  427.  
  428.  
  429. ;print massege
  430.  
  431. jmp start
  432.  
  433. msg db "Hello Msg$"
  434.  
  435.  
  436. start:
  437. mov ah,09
  438. mov dx, offset msg
  439. int 21h
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement