File: vertical_adder.asm

package info (click to toggle)
gpsim 0.32.1-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 16,644 kB
  • sloc: cpp: 121,258; asm: 54,223; ansic: 13,576; python: 9,708; sh: 4,695; makefile: 1,575; lex: 1,139; yacc: 854; pascal: 511; perl: 93; awk: 44; xml: 41
file content (43 lines) | stat: -rw-r--r-- 439 bytes parent folder | download | duplicates (7)
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
	;; vertical_adder.asm
	;;
	;; a 7-instruction vertical adder

	list	p=16c84

include "p16c84.inc"

  cblock  0x0c

	k,r,t
  endc
	
	org 0


	movlw	0xf0
	movwf	k		;The 'constant'

	movlw	0xcc
	movwf	r		;The 'register'
	
	movlw	0xaa		;The 'carry in'


	;; vert_add - a 7-instruction vertical adder
	;;
	
vert_add:
	movwf	t		;Save the input carries
	xorwf	k,w
	xorwf	r,f
	andwf	t,f
	andwf	r,w
	xorwf	t,w
	xorwf	k,w



	goto	vert_add


  end