社区
C语言
帖子详情
急求一个在DOS下的文本编辑器!
apple0897
2004-08-26 09:20:57
各位好:
我是一位新手,现急需做一个文本编辑器,要求能在DOS下实现基本的操作,各位高手能不能指点指点啊?或者沟通一下?很急!谢谢了!
...全文
867
34
打赏
收藏
急求一个在DOS下的文本编辑器!
各位好: 我是一位新手,现急需做一个文本编辑器,要求能在DOS下实现基本的操作,各位高手能不能指点指点啊?或者沟通一下?很急!谢谢了!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
34 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xyly30
2005-03-24
打赏
举报
回复
我也就是在使用Edit,很方便的,可以任意编辑文本
fgl999
2005-03-24
打赏
举报
回复
文本编辑软件,DOS里不是有一个现成的吗?就是edit啦
liu_jun_
2005-03-24
打赏
举报
回复
DOS环境运行。用TC开发。
liu_jun_
2005-03-24
打赏
举报
回复
哈哈,我的一个C语言编译器。其中的IDE模块包括你要求的所有功能。
galanz
2005-03-24
打赏
举报
回复
mark
zzxenjoy
2005-03-24
打赏
举报
回复
mark!
我要把它看懂!
szwpc
2005-03-24
打赏
举报
回复
一朵汗……人家要个编辑器,现在连源代码都有了……
牛人……
hreoghost
2005-03-24
打赏
举报
回复
做个标记!
zhhxx
2004-10-05
打赏
举报
回复
to : dreign(轮回) ( ) 信誉:100 2004-9-13 15:06:20 得分: 0
数年前偶到做过,tc2.0写的,你要传一个给你!
能不能帮我也传一个呀!
学习学习。
zhhtx@163.com
apple0897
2004-10-05
打赏
举报
回复
谢谢大家的帮助!谢谢了!
Ecoresoft
2004-10-05
打赏
举报
回复
edit
o1n
2004-10-05
打赏
举报
回复
mov ax,1 ;
mov bh,07
mov ch,rowpt
mov dh,ch
mov cl,colpt
mov dl,79h
mov ah,6
int 10h
jmp kp
;k:
;cmp rowpt,0
;jz delret
;dec rowpt
;mov bl,rowpt
;xor bh,bh
;mov cl,cntl[bx]
;xor ch,ch
;mov colpt,cl
;add cl,cntl[bx+1]
;mov cntl[bx],cl
;dec bufpt
;mov cx,rowmx
;sub cx,bx
;l: mov dl,cntl[cx]
;xor dh,dh
;dec dx
;mov cntl[cx],dl
;loop l
jmp kp
delret: jmp read_k
up_k:
mov bh,rowpt
cmp bh,0
jz uret
dec rowpt
mov bl,rowpt
xor bh,bh
mov cl,cntl[bx]
cmp cl,colpt
ja k0
mov al,colpt
mov ah,0
sub bufpt,ax
dec bufpt
mov bl,rowpt
xor bh,bh
mov al,cntl[bx]
mov colpt,al
jmp k1
k0: mov cl,cntl[bx]
mov ch,0
sub bufpt,cx
dec bufpt
k1: curs rowpt,colpt
uret: jmp read_k
left_k:
cmp colpt,0 ;光标是否在第0列
jnz k2
cmp rowpt,0 ;光标是否在第0行、第0列
jz lret
dec rowpt ;光标移至上一行的最后一列
mov al,rowpt
lea bx,cntl
xlat cntl ;(al)<-((bx)+(al))
mov colpt,al
jmp k3
k2: dec colpt ;光标左移
k3: dec bufpt ;缓冲区头指针减1
curs rowpt,colpt ;设置光标
lret: jmp read_k
right_k:
mov bx,bufpt
cmp bx,buftl ;缓冲区头指针和尾指针指向同一点
je rret
inc colpt ;光标右移
cmp kbd_buf[bx],0dh ;光标是否到达最后一列
jnz k4
inc rowpt ;光标移至下一行
mov colpt,0 ;光标指向下一行的第一列
k4: inc bufpt ;缓冲区头指针加1
curs rowpt,colpt ;设置光标
rret: jmp read_k
down_k:
mov bl,rowpt
xor bh,bh
cmp bx,rowmx
jz dret
mov dl,rowpt
xor dh,dh
inc rowpt
mov bl,rowpt
xor bh,bh
mov cl,cntl[bx]
xor ch,ch
cmp cl,colpt
ja k5
mov bx,dx
mov al,cntl[bx]
xor ah,ah
add bufpt,ax
mov al,colpt
mov bl,rowpt
xor bh,bh
sub al,cntl[bx]
xor ah,ah
sub bufpt,ax
inc bufpt
mov al,cntl[bx]
mov colpt,al
jmp k6
k5: mov bx,dx
mov cl,cntl[bx]
mov ch,0
add bufpt,cx
inc bufpt
k6: curs rowpt,colpt
dret: jmp read_k
;------------------------------------------------------
dispbf proc near
mov bx,0
mov cx,buftl
curs 0,0
disp: mov al,kbd_buf[bx]
push bx
mov bx,0700
mov ah,0eh ;显示字符 al=字符,bh=页号,bl=前景色
int 10h
pop bx
cmp al,0dh
jnz kk
mov al,0ah
mov ah,0eh
int 10h
kk: inc bx
loop disp
ret
dispbf endp
;------------------------------------------------------
main endp
;------------------------------------------------------
cseg ends
end start
o1n
2004-10-05
打赏
举报
回复
以前用汇编写的:
dseg segment
kbd_buf db 96 dup(' ') ;缓冲区
cntl db 25 dup(0) ;字符计数单元
bufpt dw 0 ;缓冲区头指针
buftl dw 0 ;缓冲区尾指针
colpt db 0 ;光标列指针
rowpt db 0 ;光标行指针
rowmx dw 0 ;最大输入行
dseg ends
;------------------------------------------------------
curs macro row,col ;定义宏指针
mov dh,row
mov dl,col
mov bh,0
mov ah,2
int 10h ;置光标位置
endm
;------------------------------------------------------
cseg segment
main proc far
assume cs:cseg,ds:dseg,es:dseg
start:
push ds
sub ax,ax
push ax
mov ax,dseg
mov ds,ax
mov es,ax
mov buftl,0
mov colpt,0
mov rowpt,0
mov bufpt,0
mov rowmx,0
mov cx,length cntl
mov al,0
lea di,cntl
cld ;方向标志置0 (地址自动加1)
rep stosb ;初始化缓冲区,全部置为0
mov ah,6
mov al,0 ;al=0初始化窗口,al=1下卷行数
mov cx,0 ;ch/cl=左上角行/列号
mov dh,24 ;右上角行号为24
mov dl,79 ;右上角列号为79
mov bh,07 ;下卷功能
int 10h
curs 0,0
read_k:
mov ah,0 ;从键盘读一字符 al=字符码 ah=扫描码
int 16h
cmp al,1bh
jnz arrow
ret
arrow:
cmp ah,48h ;对比上箭头扫描码48h
jz up
cmp ah,4bh ;对比左箭头扫描码4bh
jz left
cmp ah,4dh ;对比右箭头扫描码4dh
jz right
cmp ah,50h ;对比下箭头扫描码50h
jz down
cmp ah,53h
jz del
cmp ah,0eh
jz back
;------------------------------------------------------
inst: jmp ins_k
up: jmp up_k
left: jmp left_k
right: jmp right_k
down: jmp down_k
del: jmp del_k
back: jmp del_k
;------------------------------------------------------
ins_k:
mov bx,bufpt
mov cx,buftl
cmp bx,cx
je km
lea di,kbd_buf
add di,cx
mov si,di
dec si
sub cx,bx
std ;方向标志置1 (地址自动减1)
rep movsb ;按字节传送 (di<-si)
km:
mov kbd_buf[bx],al
inc bufpt
inc buftl
cmp al,0dh
jnz kn
lea si,cntl
add si,rowmx
inc si
mov di,si
inc di
mov cx,rowmx
sub cl,rowpt
std ;方向标志置1 (地址自动减1)
rep movsb ;按字节传送 (di<-si)
mov bl,rowpt
xor bh,bh
mov cl,colpt
mov ch,cntl[bx]
sub ch,colpt
mov cntl[bx],cl
mov cntl[bx+1],ch
mov ax,rowmx
mov bh,07 ;卷入行属性
mov ch,rowpt ;左上角行号为当前光标行
mov dh,24 ;右上角行号为24行
mov cl,0 ;左上角列号为0
mov dl,79 ;右上角列号为79
mov ah,6 ;上卷功能
int 10h
inc rowpt
inc rowmx
mov colpt,0
jmp short kp
kn:
mov bl,rowpt
xor bh,bh
inc cntl[bx]
inc colpt
kp:
call dispbf
curs rowpt,colpt
jmp read_k
del_k:
mov bx,bufpt
mov cx,buftl
cmp colpt,0
;jz k
lea di,kbd_buf ;缓冲区前移
add di,bx
mov si,di
dec di
sub cx,bx
cld ;方向标志置0 (地址自动加1)
rep movsb
dec bufpt
dec buftl
dec cntl[bx]
dec colpt
一叶还真不知秋
2004-10-05
打赏
举报
回复
文本编辑器的源程序,能否给俺一个
xteaj@126.com
xteaj@sohu.com
谢谢!
vitamines
2004-10-05
打赏
举报
回复
cced
dreign
2004-09-21
打赏
举报
回复
今天才看到,传了!
apple0897
2004-09-19
打赏
举报
回复
to: dreign(轮回)
你有那个源程序吗?谢谢你传一个给我哟!学习学习!谢谢哟!
seilfer2000
2004-09-13
打赏
举报
回复
去找本C语言的教程,一般到最后都会有个类似的文本编辑器的编程:)
getter
2004-09-13
打赏
举报
回复
-.-
xiaolvlong
2004-09-13
打赏
举报
回复
我最近由于应付作业,做了一个。最好咱们不是一个学校的。。。
加载更多回复(14)
我在CSDN参与的3000个帖子
2:100分
急求
,随机输出十个小写字母,但是,要求这十个字母不相同 3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望高手帮忙! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,...
各种资源网站
每个问题域都有专门聘请的编辑、顾问进行整理, 因此它也可以帮助我们了解哲学在当代美国是如何被分类的,各个问题域是如何被系联的。 31、【10个LOGO资源站】 还在为设计LOGO犯愁?想要提高Logo设计技巧?...
WEB开发文档2 总结
http://blog.donews.com/lvjiyong/archive/2006/06/29/931071.aspx 怎样将后台生成的在内存中的图象显示到客户端 Microsoft IE WebControls下载地址 如何在DATAGRID中使用JAVASCRIPT脚本控制 DataGrid中连接到...
CSDN回帖得分大全(近两年)
三维坐标系中的两个相同的三角形,如何旋转其中
一个
,使其和另
一个
平行 [推荐] [VC/MFC 图形处理/算法] √ 请详述TCP穿透NAT的原理 [VC/MFC 网络编程] √ 把VC++中的函数转化成JS? [VC...
webmagic采集CSDN的Java_WebDevelop页面
, jquery Json解析, 求json大神帮我看看这个格式的json如何解析, 求助:jsp+easyUI保存多个同类型model, 关于PWC6033: Unable to compile class for JSP问题的求助, 关于在同
一个
页面。点击查询按钮,下面会出现表格...
C语言
70,020
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章