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

📄 io4.s

📁 Version 6 Unix 核心源代码 Version 6 Unix 核心源代码
💻 S
字号:
/// io4 -- numeric output conversionqicv:hicv:	jsr	r5,rerr; 999.	sys	exitxicv:	jsr	r5,fgetc	rts	r5gocv:	mov	pc,gflg	jsr	r5,getarg	mov	ndig,_ndigit	jsr	pc,ecvt	tst	r2	bmi	eocv	cmp	r2,ndig	bgt	eocv	sub	r2,ndig	sub	$4,width	jsr	r5,focv	add	$4,width	add	$4,nspace	rts	r5eocv:	mov	$'e,-(sp)	br	1fdocv:	mov	$'d,-(sp)1:	tst	gflg	bne	1f	jsr	r5,getarg1:	mov	ndig,r1	add	$6,r1	add	nflg,r1	sub	width,r1	bge	2f	sub	r1,nspace2:	tst	nflg	beq	2f	mov	$'-,r0	jsr	r5,fputcc2:	mov	ndig,r1	mov	scale,r0	bgt	2f	add	r0,r1	br	3f2:	inc	r13:	mov	r1,_ndigit	jsr	pc,ecvt	mov	r0,r1	mov	r2,-(sp)	mov	scale,r2	sub	r2,(sp)	tst	r2	bgt	2f	mov	$'0,r0	jsr	r5,fputcc	br	3f2:	movb	(r1)+,r0	dec	_ndigit	jsr	r5,fputcc	sob	r2,2b3:	mov	$'.,r0	jsr	r5,fputcc	neg	r2	ble	2f3:	mov	$'0,r0	jsr	r5,fputcc	sob	r2,3b2:	mov	_ndigit,r2	ble	2f3:	movb	(r1)+,r0	jsr	r5,fputcc	sob	r2,3b2:	mov	2(sp),r0	jsr	r5,fputcc	mov	(sp)+,r1	bge	2f	mov	$'-,r0	jsr	r5,fputcc	neg	r1	br	3f2:	mov	$'+,r0	jsr	r5,fputcc3:	clr	r0	div	$10.,r0	add	$'0,r0	jsr	r5,fputcc	mov	r1,r0	add	$'0,r0	jsr	r5,fputcc	tst	(sp)+	rts	r5iocv:	clr	-(sp)	clr	ndig	br	1ffocv:	mov	$1,-(sp)1:	clr	-(sp)	tst	gflg	bne	1f	jsr	r5,getarg	tst	2(sp)	beq	1f	mov	scale,(sp)1:	mov	ndig,_ndigit	add	(sp)+,_ndigit	jsr	pc,fcvt	mov	r0,r1	tst	(sp)	beq	1f	tst	gflg	bne	1f	add	scale,r21:	mov	ndig,r0	add	(sp),r0	add	nflg,r0	tst	r2	ble	1f	add	r2,r0	br	2f1:	inc	r02:	sub	width,r0	bge	1f	sub	r0,nspace1:	tst	nflg	beq	1f	mov	$'-,r0	jsr	r5,fputcc1:	tst	r2	bgt	1f	mov	$'0,r0	jsr	r5,fputcc	br	2f1:	movb	(r1)+,r0	jsr	r5,fputcc	sob	r2,1b2:	tst	(sp)+	beq	1f	mov	$'.,r0	jsr	r5,fputcc1:	mov	ndig,-(sp)	ble	1f	tst	r2	bge	1f	neg	r22:	mov	$'0,r0	jsr	r5,fputcc	dec	ndig	ble	1f	sob	r2,2b1:	mov	ndig,r2	ble	2f1:	movb	(r1)+,r0	jsr	r5,fputcc	sob	r2,1b2:	mov	(sp)+,ndig	rts	r5getarg:	clr	nflg	setd	cmpb	itype,$'r	beq	1f	seti	cmpb	ilen,$4	bne	2f	setl2:	cmpb	ilen,$1	beq	3f	movif	*ilval,r0	br	2f3:	movb	*ilval,r0	movif	r0,fr0	br	2f1:	cmpb	ilen,$4	bne	1f	movof	*ilval,r0	br	2f1:	movf	*ilval,r02:	cfcc	bge	1f	absf	r0	mov	$1,nflg1:	rts	r5

⌨️ 快捷键说明

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