📄 putc.s
字号:
/ putw/putc -- write words/characters on output file .globl _putc, _putw, _fflush, _fcreat .globl cerror .comm _errno,2_fcreat: mov r5,-(sp) mov sp,r5 mov 4(r5),0f mov 6(r5),r1 mov pc,(r1) / a putatively illegal file desc. sys 0; 9f.data9: sys creat; 0:..; 666.text bes badret mov r0,(r1)+ clr (r1)+ clr (r1)+ br goodret_putw: mov r5,-(sp) mov sp,r5 mov 6(r5),r1 dec 2(r1) bge 1f jsr pc,fl dec 2(r1)1: movb 4(r5),*4(r1) inc 4(r1) dec 2(r1) bge 1f jsr pc,fl dec 2(r1)1: movb 5(r5),*4(r1) inc 4(r1) mov 4(r5),r0 br goodret_putc: mov r5,-(sp) mov sp,r5 mov 6(r5),r1 dec 2(r1) bge 1f jsr pc,fl dec 2(r1)1: mov 4(r5),r0 movb r0,*4(r1) inc 4(r1) br goodret_fflush: mov r5,-(sp) mov sp,r5 mov 4(r5),r1 jsr pc,fl br goodretfl: mov r1,r0 add $6,r0 mov r0,-(sp) mov r0,0f mov 4(r1),0f+2 beq 1f sub r0,0f+2 mov (r1),r0 sys 0; 9f.data9: sys write; 0:..; ...text1: mov (sp)+,4(r1) mov $512.,2(r1) rts pcbadret: jmp cerrorgoodret: clr _errno mov (sp)+,r5 rts pc
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -