⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 as14.s

📁 Version 6 Unix 核心源代码 Version 6 Unix 核心源代码
💻 S
字号:
/// a4 -- pdp-11 assembler pass1rname:	mov	r1,-(sp)	mov	r2,-(sp)	mov	r3,-(sp)	mov	$8,r5	mov	$symbol+8.,r2	clr	-(r2)	clr	-(r2)	clr	-(r2)	clr	-(r2)	clr	-(sp)	clr	-(sp)	cmp	r0,$'~		/  symbol not for hash table	bne	1f	inc	2(sp)	clr	ch1:	jsr	pc,rch	movb	chartab(r0),r3	ble	1f	add	r3,(sp)	swab	(sp)	dec	r5	blt	1b	movb	r3,(r2)+	br	1b1:	mov	r0,ch	mov	(sp)+,r1	clr	r0	tst	(sp)+	beq	1f	mov	symend,r4	br	4f1:	div	$hshsiz,r0	ashc	$1,r0	add	$hshtab,r11:	sub	r0,r1	cmp	r1,$hshtab	bhi	2f	add	$2*hshsiz,r12:	mov	$symbol,r2	mov	-(r1),r4	beq	3f	cmp	(r2)+,(r4)+	bne	1b	cmp	(r2)+,(r4)+	bne	1b	cmp	(r2)+,(r4)+	bne	1b	cmp	(r2)+,(r4)+	bne	1b	br	1f3:	mov	symend,r4	mov	r4,(r1)4:	mov	$symbol,r2	mov	r4,-(sp)	add	$20,r4	cmp	r4,0f	blos	4f	add	$512.,0f	sys	indir; 9f	.data9:	sys	break; 0:end	.text4:	mov	(sp)+,r4	mov	(r2)+,(r4)+	mov	(r2)+,(r4)+	mov	(r2)+,(r4)+	mov	(r2)+,(r4)+	clr	(r4)+	clr	(r4)+	mov	r4,symend	sub	$4,r41:	mov	r4,-(sp)	mov	r4,r3	sub	$8,r3	cmp	r3,$usymtab	blo	1f	sub	$usymtab,r3	clr	r2	div	$3,r2	mov	r2,r4	add	$4000,r4		/ user symbol	br	2f1:	sub	$symtab,r3	clr	r2	div	$3,r2	mov	r2,r4	add	$1000,r4		/ builtin symbol2:	jsr	pc,putw	mov	(sp)+,r4	mov	(sp)+,r3	mov	(sp)+,r2	mov	(sp)+,r1	tst	(sp)+	rts	pcnumber:	mov	r2,-(sp)	mov	r3,-(sp)	mov	r5,-(sp)	clr	r1	clr	r51:	jsr	pc,rch	jsr	r5,betwen; '0; '9		br 1f	sub	$'0,r0	mpy	$10.,r5	add	r0,r5	als	$3,r1	add	r0,r1	br	1b1:	cmp	r0,$'b	beq	1f	cmp	r0,$'f	beq	1f	cmp	r0,$'.	bne	2f	mov	r5,r1	clr	r02:	movb	r0,ch	mov	r1,r0	mov	(sp)+,r5	mov	(sp)+,r3	mov	(sp)+,r2	rts	pc1:	mov	r0,r3	mov	r5,r0	jsr	pc,fbcheck	add	$141,r0	cmp	r3,$'b	beq	1f	add	$10.,r01:	mov	r0,r4	mov	(sp)+,r5	mov	(sp)+,r3	mov	(sp)+,r2	add	$2,(sp)	rts	pcrch:	movb	ch,r0	beq	1f	clrb	ch	rts	pc1:	dec	inbfcnt	blt	2f	movb	*inbfp,r0	inc	inbfp	bic	$!177,r0	beq	1b	rts	pc2:	movb	fin,r0	beq	3f	sys	read; inbuf;512.	bcs	2f	tst	r0	beq	2f	mov	r0,inbfcnt	mov	$inbuf,inbfp	br	1b2:	movb	fin,r0	clrb	fin	sys	close3:	decb	nargs	bgt	2f	mov	$'\e,r0	rts	pc2:	tst	ifflg	beq	2f	jsr	r5,error; 'i	jmp	aexit2:	mov	curarg,r0	tst	(r0)+	mov	(r0),0f	mov	r0,curarg	incb	fileflg	sys	indir; 9f	.data9:	sys	open; 0:0; 0	.text	bec	2f	mov	0b,r0	jsr	r5,filerr; <?\n>	jmp	 aexit2:	movb	r0,fin	mov	$1,line	mov	r4,-(sp)	mov	r1,-(sp)	mov	$5,r4	jsr	pc,putw	mov	*curarg,r12:	movb	(r1)+,r4	beq	2f	jsr	pc,putw	br	2b2:	mov	$-1,r4	jsr	pc,putw	mov	(sp)+,r1	mov	(sp)+,r4	br	1b

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -